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;

int main()
{
  int n, a, b=0;
  
  cin >> n;
  bool pot[201740] = {false};//201740
  
  for (int i=0;i<n;i++){
  	cin >> a;
  	if (pot[a]==false){
  		pot[a]=true;
  		if (a>b) {
  			b=a;
  		}
  	} else {
  		int j=0;
  		while(pot[a+j]){
  			pot[a+j]=false;
  			j++;
  		}
  		pot[a+j]=true;
  		if (a+j>b) {
  			b=a+j;
  		}
  	}
  } 
  cout << b;
  
  return 0;
}