Guest User

Untitled

a guest
Jul 18th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. // @eyny@abcde12101
  2. #include<iostream>
  3. #include<cstdlib>
  4. #include<cstdio>
  5.  
  6. using namespace std;
  7.  
  8. int n;
  9.  
  10. int p2n ( int k ) {
  11. if ( k == 0 )
  12. return 1;
  13. else if ( k == 1 )
  14. return 2;
  15. else
  16. {
  17. int p = p2n ( k / 2 );
  18. if ( k % 2 )
  19. return p*p*2;
  20. else return p*p;
  21. }
  22. }
  23.  
  24. void prt ( int k )
  25. {
  26. switch ( k )
  27. {
  28. case 10: printf ( "A" ); break;
  29. case 11: printf ( "B" ); break;
  30. case 12: printf ( "C" ); break;
  31. case 13: printf ( "D" ); break;
  32. case 14: printf ( "E" ); break;
  33. case 15: printf ( "F" ); break;
  34. default: printf ( "%d", k ); break;
  35. }
  36. }
  37.  
  38. void d2x ( int k, int b, const int& base ) {
  39. if ( b == 1 )
  40. prt ( k );
  41. else
  42. {
  43. d2x ( k/base, b-1, base );
  44. prt ( k%base );
  45. }
  46. }
  47.  
  48. int main() {
  49.  
  50. while ( scanf ( "%d", &n ) != 0 )
  51. {
  52. int k = p2n ( n );
  53. for ( int i = 0; i < k; i++ )
  54. {
  55. d2x ( i, n, 2 );
  56. cout << ' ' << i << " 0X";
  57. d2x ( i, max ( n/4, 1 ), 16 );
  58. cout << endl;
  59. }
  60. }
  61.  
  62. return 0;
  63. }
Add Comment
Please, Sign In to add comment