Cod sursa(job #1712106)
Utilizator | Rogoz Bogdan rogoz.bogdan | Data | 2 iunie 2016 00:36:05 |
---|---|---|---|
Problema | Twoton | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva ICPC | Marime | 0.7 kb |
#include <stdio.h>
#define MOD 19997
int a[1000024], n;
int v[1000024];
void wtf_iterativ()
{
int i,minim;
v[n-1] = 1;
minim = a[n-1];
for(i=n-2; i>=0; i--)
{
if(a[i] < minim)
{
v[i] = 1 + v[i+1];
minim = a[i];
}
else
{
v[i] = 1 + 2*v[i+1];
}
}
}
int main()
{
int i;
FILE *fin, *fout;
fin = fopen("twoton.in", "r");
fout = fopen("twoton.out", "w");
fscanf(fin, "%d", &n);
for(i=0; i<n; i++)
fscanf(fin, "%d", &a[i]);
wtf_iterativ();
fprintf(fout, "%d\n", v[0]);
fclose(fin);
fclose(fout);
return 0;
}