Loading...
Submission
# When Author Problem Language CPU Memory
20876 2024-06-15 17:18:30 esh29 Binary Prime C++ 17 2 ms 3612 kb Accepted
Test Cases
# CPU Memory Points
1 2 ms 3568 kb 1 Accepted
2 1 ms 3544 kb 1 Accepted
3 1 ms 3504 kb 1 Accepted
4 1 ms 3572 kb 1 Accepted
5 1 ms 3536 kb 1 Accepted
6 1 ms 3584 kb 1 Accepted
7 1 ms 3612 kb 1 Accepted
8 1 ms 3504 kb 1 Accepted
9 2 ms 3596 kb 1 Accepted
10 1 ms 3564 kb 1 Accepted
11 2 ms 3404 kb 1 Accepted
Source Code
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define esh29() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  5. #define ll long long int
  6. #define pb push_back
  7. #define ep emplace_back
  8. #define forn(i, n) for(int i = 0; i < int(n); i++)
  9. #define form(i, n) for(int i = 1; i < int(n); i++)
  10. #define MOD 1000000007
  11. #define w(t) int t; cin >> t; cin.ignore(); while (t--)
  12.  
  13. const double eps = 1e-9;
  14. const double PI = acos(-1);
  15.  
  16. #define F first
  17. #define S second
  18. #define all(a) (a).begin(),(a).end()
  19. #define rall(a) (a).rbegin(),(a).rend()
  20. #define sz(x) (int)x.size()
  21.  
  22. typedef vector<int> vi;
  23. typedef vector<ll> vl;
  24. typedef vector<vi> vvi;
  25. typedef vector<vl> vvl;
  26. typedef pair<int,int> pii;
  27. typedef pair<double, double> pdd;
  28. typedef pair<ll, ll> pll;
  29. typedef vector<pii> vii;
  30. typedef vector<pll> vll;
  31. typedef double dl;
  32.  
  33.  
  34. #define dbg(args...) do {cerr << #args << " : "; faltu(args); } while(0)
  35. #define fraction() cout.unsetf(ios::floatfield); cout.precision(10); cout.setf(ios::fixed,ios::floatfield);
  36.  
  37.  
  38. ll gcd ( ll a, ll b ) { return __gcd ( a, b ); }
  39. ll lcm ( ll a, ll b ) { return a * ( b / gcd ( a, b ) ); }
  40.  
  41.  
  42. template < typename F, typename S >
  43. ostream& operator << ( ostream& os, const pair< F, S > & p ) {
  44. return os << "(" << p.first << ", " << p.second << ")";
  45. }
  46.  
  47. template < typename T >
  48. ostream &operator << ( ostream & os, const vector< T > &v ) {
  49. os << "{";
  50. for(auto it = v.begin(); it != v.end(); ++it) {
  51. if( it != v.begin() ) os << ", ";
  52. os << *it;
  53. }
  54. return os << "}";
  55. }
  56.  
  57. template < typename T >
  58. ostream &operator << ( ostream & os, const set< T > &v ) {
  59. os << "[";
  60. for(auto it = v.begin(); it != v.end(); ++it) {
  61. if( it != v.begin() ) os << ", ";
  62. os << *it;
  63. }
  64. return os << "]";
  65. }
  66.  
  67. template < typename T >
  68. ostream &operator << ( ostream & os, const multiset< T > &v ) {
  69. os << "[";
  70. for(auto it = v.begin(); it != v.end(); ++it) {
  71. if( it != v.begin() ) os << ", ";
  72. os << *it;
  73. }
  74. return os << "]";
  75. }
  76.  
  77. template < typename F, typename S >
  78. ostream &operator << ( ostream & os, const map< F, S > &v ) {
  79. os << "[";
  80. for(auto it = v.begin(); it != v.end(); ++it) {
  81. if( it != v.begin() ) os << ", ";
  82. os << it -> first << " = " << it -> second ;
  83. }
  84. return os << "]";
  85. }
  86.  
  87. #define dbg(args...) do {cerr << #args << " : "; faltu(args); } while(0)
  88.  
  89. void faltu () {
  90. cerr << endl;
  91. }
  92.  
  93. template <typename T>
  94. void faltu( T a[], int n ) {
  95. for(int i = 0; i < n; ++i) cerr << a[i] << ' ';
  96. cerr << endl;
  97. }
  98.  
  99. template <typename T, typename ... hello>
  100. void faltu( T arg, const hello &... rest) {
  101. cerr << arg << ' ';
  102. faltu(rest...);
  103. }
  104.  
  105. void solve(){
  106. ll n,c=0,i,j,k;
  107. cin>>n;
  108. for (i=45; i>=0; i--){
  109. k = pow(2,i);
  110. //cout<<k<<endl;
  111. if (k<=n){
  112. c++;
  113. n -=k;
  114. }
  115. }
  116. for (i=2; i<c; i++){
  117. if (c%i==0){
  118. cout<<-1<<endl;
  119. return;
  120. }
  121. }
  122. if (c==1) cout<<-1<<endl;
  123. else cout<<"Binary prime\n";
  124.  
  125.  
  126. }
  127.  
  128. int main() {
  129. esh29();
  130.  
  131. w(t) {
  132. solve();
  133.  
  134.  
  135. }
  136. return 0;
  137. }