#include <iostream>
using namespace std;
bool t[201719];
long long maxn, n, a;
int main(){
cin >> n;
for(long long i=1; i<=n; i++)
{
cin>>a;
while (t[a]==true)
{ t[a]=false;
a+=1;
}
t[a]=true;
if (a>maxn) { maxn=a;}
}
cout<<maxn;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <iostream> using namespace std; bool t[201719]; long long maxn, n, a; int main(){ cin >> n; for(long long i=1; i<=n; i++) { cin>>a; while (t[a]==true) { t[a]=false; a+=1; } t[a]=true; if (a>maxn) { maxn=a;} } cout<<maxn; } |
English