#include <iostream>
using namespace std;
void dodaj(bool *T,int x)
{
if (!T[x]) T[x]=true;
else
{T[x]=false;
dodaj(T,x+1);
}
}
int main ()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
int C=201739;
bool * T = new bool [C];
for (int i=0;i<C;++i)
T[i]=false;
int coin;
cin>>coin;
while (cin>>coin)
{
dodaj(T,coin);
}
for (int i=C-1;;--i)
if (T[i]==true)
{cout<<i;return 0;}
return 0;
}
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 32 33 34 | #include <iostream> using namespace std; void dodaj(bool *T,int x) { if (!T[x]) T[x]=true; else {T[x]=false; dodaj(T,x+1); } } int main () { ios_base::sync_with_stdio(0); cin.tie(0); int C=201739; bool * T = new bool [C]; for (int i=0;i<C;++i) T[i]=false; int coin; cin>>coin; while (cin>>coin) { dodaj(T,coin); } for (int i=C-1;;--i) if (T[i]==true) {cout<<i;return 0;} return 0; } |
English