1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using namespace std;
#include <cstdio>
#include <algorithm>

const int N = 201718+50;
char tab[N];

int main () {
  int najw = 0;
  int n, wyk;
  scanf("%d", &n);
  for(int i = 0; i < n; ++i) {
    scanf("%d", &wyk);
    ++tab[wyk];
    while(tab[wyk] > 1) {
        tab[wyk] = 0;
        ++tab[++wyk];
    }
    najw = max(najw, wyk);
  }
  printf("%d\n", najw);
  return 0;
}