1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#include <cstdio>
#include <algorithm>
using namespace::std;
int ilosc[225000], n, maxi = 0, wynik = 0;
int main() {
	scanf("%d", &n);
	for(int i = 0; i < n; i++) {
		int x = 0;
		scanf("%d", &x);
		ilosc[x]++;
		maxi = max(maxi, x);
	}
	for(int i = 0; i < maxi+220; i++) {
		ilosc[i+1] += ilosc[i]/2;
		if(ilosc[i] > 0) wynik = i;
	}
	printf("%d", wynik);
}