Saleh127

Untitled

Apr 28th, 2020
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.77 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int a[1000000],d[1000000];
  4. int main()
  5. {
  6. int b,c,e,f,i,j,k,l,t;
  7. scanf("%d",&t);
  8. for(int x=1;x<=t;x++)
  9. {
  10. scanf("%d",&b);
  11. i=0;
  12. e=0;
  13. while(b)
  14. {
  15. c=b%2;
  16. a[i++]=c;
  17. b/=2;
  18. }
  19. a[i++]=0;
  20. for(k=i-1,l=0;k>=0;k--,l++)
  21. {
  22. d[l]=a[k];
  23. }
  24.  
  25. for(j=i-1;j>0;j--)
  26. {
  27. if(d[j]==1 && d[j-1]==0)
  28. {
  29. swap(d[j],d[j-1]);
  30. break;
  31. }
  32. }
  33. sort(d+j+1,d+i);
  34. for(k=i-1,l=0;k>=0;k--,l++)
  35. {
  36. e+=(d[k]*pow(2,l));
  37. }
  38. printf("Case %d: %d\n",x,e);
  39. }
  40. return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment