Cod sursa(job #1549710)

Utilizator borcanirobertBorcani Robert borcanirobert Data 12 decembrie 2015 17:45:00
Problema Progresie Scor 0
Compilator cpp Status done
Runda Arhiva ICPC Marime 0.54 kb
#include <fstream>
#include <iostream>
using namespace std;

ifstream fin("progresie.in");
ofstream fout("progresie.out");

const int MAX = 20005;
int a[MAX];
int p[MAX];
int pn;
int N;
int st, s;
int np = 0;

int main()
{
	int i, ind = 1;
	
	fin >> N;
	a[0] = 1;
	pn = 2;
	p[1] = 1;
	
	for ( i = 1; i <= N; i++ )
	{
		if ( i == pn )
			a[i] = a[i - 1] + s + 1, ind = 1, pn = pn * 2;
		else
			a[i] = a[i - 1] + p[ind++];
		
		p[++np] = a[i] - a[i - 1];
	//	if ( i > 1 )
		s += p[i];
	
		fout << a[i] << ' ';
	}
	
	fin.close();
	fout.close();
	return 0;
}