#include<iostream> using namespace std; int tab[203000]; int main() { ios_base::sync_with_stdio(0); int z,a,i,j,n,mx=0; cin >>n; for(i=0;i<n;i++) { cin >>a; mx=max(a,mx); tab[a]++; } for(i=0;i<mx || tab[i]>0;i++) { tab[i+1]+=(tab[i]/2); } cout <<i-1; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include<iostream> using namespace std; int tab[203000]; int main() { ios_base::sync_with_stdio(0); int z,a,i,j,n,mx=0; cin >>n; for(i=0;i<n;i++) { cin >>a; mx=max(a,mx); tab[a]++; } for(i=0;i<mx || tab[i]>0;i++) { tab[i+1]+=(tab[i]/2); } cout <<i-1; } |