#include<bits/stdc++.h> using namespace std; int pot[1200007]; int main() { ios_base::sync_with_stdio(0); cin.tie(NULL); int n,x,ma=0; cin>>n; for(int a=0;a<n;a++) { cin>>x; pot[x]++; if(ma<x) ma=x; } for(int a=0;a<=ma;a++) { pot[a+1]+=pot[a]/2; if((a+1)>ma&&pot[a]>1) { ma=a+1; } } cout<<ma; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include<bits/stdc++.h> using namespace std; int pot[1200007]; int main() { ios_base::sync_with_stdio(0); cin.tie(NULL); int n,x,ma=0; cin>>n; for(int a=0;a<n;a++) { cin>>x; pot[x]++; if(ma<x) ma=x; } for(int a=0;a<=ma;a++) { pot[a+1]+=pot[a]/2; if((a+1)>ma&&pot[a]>1) { ma=a+1; } } cout<<ma; } |