Advertisement
Rofyda_Elghadban1

Untitled

Feb 19th, 2024
1,005
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.74 KB | None | 0 0
  1.  void solve(){
  2.   int n,counter=0;
  3.   cin>>n;
  4.   vector<ll>v(n);
  5.   map<int,int>mp;
  6.   cin(v);
  7.   sort(all(v));
  8.   for(int i=0;i<n;i++){
  9.     if(v[i]<=0){
  10.       counter=0;
  11.       mp[counter]++;
  12.     }else if(v[i]<=1&&v[i]>0){
  13.       counter=1;
  14.       mp[counter]++;
  15.     }else if(v[i]<=3&&v[i]>1){
  16.       counter=2;
  17.       mp[counter]++;
  18.     }else if(v[i]<=7&&v[i]>3){
  19.       counter=3;
  20.       mp[counter]++;
  21.     }else if(v[i]<=15&&v[i]>7){
  22.       counter=4;
  23.       mp[counter]++;
  24.     }else if(v[i]<=31&&v[i]>15){
  25.       counter=5;
  26.       mp[counter]++;
  27.     }else if(v[i]<=63&&v[i]>31){
  28.       counter=6;
  29.       mp[counter]++;
  30.     }else if(v[i]<=127&&v[i]>63){
  31.       counter=7;
  32.       mp[counter]++;
  33.     }else if(v[i]<=255&&v[i]>127){
  34.       counter=8;
  35.       mp[counter]++;
  36.     }else if(v[i]<=511&&v[i]>255){
  37.       counter=9;
  38.       mp[counter]++;
  39.     }else if(v[i]<=1023&&v[i]>511){
  40.       counter=10;
  41.       mp[counter]++;
  42.     }else if(v[i]<=2047&&v[i]>1023){
  43.       counter=11;
  44.       mp[counter]++;
  45.     }else if(v[i]<=4095&&v[i]>2047){
  46.       counter=12;
  47.       mp[counter]++;
  48.     }else if(v[i]<=8191&&v[i]>4095){
  49.       counter=13;
  50.       mp[counter]++;
  51.     }else if(v[i]<=16383&&v[i]>8191){
  52.       counter=14;
  53.       mp[counter]++;
  54.     }else if(v[i]<=32767&&v[i]>16383){
  55.       counter=15;
  56.       mp[counter]++;
  57.     }else if(v[i]<=65535&&v[i]>32767){
  58.       counter=16;
  59.       mp[counter]++;
  60.     }else if(v[i]<=131071&&v[i]>65535){
  61.       counter=17;
  62.       mp[counter]++;
  63.     }else if(v[i]<=262143&&v[i]>131071){
  64.       counter=18;
  65.       mp[counter]++;
  66.     }else if(v[i]<=524287&&v[i]>262143){
  67.       counter=19;
  68.       mp[counter]++;
  69.     }else if(v[i]<=1048575&&v[i]>524287){
  70.       counter=20;
  71.       mp[counter]++;
  72.     }else if(v[i]<=2097151&&v[i]>1048575){
  73.       counter=21;
  74.       mp[counter]++;
  75.     }else if(v[i]<=4194303&&v[i]>2097151){
  76.       counter=22;
  77.       mp[counter]++;
  78.     }else if(v[i]<=8388607&&v[i]>4194303){
  79.       counter=23;
  80.       mp[counter]++;
  81.     }else if(v[i]<=16777215&&v[i]>8388607){
  82.       counter=24;
  83.       mp[counter]++;
  84.     }else if(v[i]<=33554431&&v[i]>16777215){
  85.       counter=25;
  86.       mp[counter]++;
  87.     }else if(v[i]<=67108863&&v[i]>33554431){
  88.       counter=26;
  89.       mp[counter]++;
  90.     }else if(v[i]<=134217727&&v[i]>67108863){
  91.       counter=27;
  92.       mp[counter]++;
  93.     }else if(v[i]<=268435455&&v[i]>134217727){
  94.       counter=28;
  95.       mp[counter]++;
  96.     }else if(v[i]<=536870911&&v[i]>268435455){
  97.       counter=29;
  98.       mp[counter]++;
  99.     }else if(v[i]<=1073741823&&v[i]>536870911){
  100.       counter=30;
  101.       mp[counter]++;
  102.     }else if(v[i]<=2147483647&&v[i]>1073741823){
  103.       counter=31;
  104.       mp[counter]++;
  105.     }
  106.   }
  107.   for(auto i:mp){
  108.     cout<<i.first<<" "<<i.second<<"\n";
  109.   }
  110.   cout<<"\n";
  111.  }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement