Cod sursa(job #1710139)

Utilizator alexpetrescuAlexandru Petrescu alexpetrescu Data 28 mai 2016 16:11:51
Problema Twoton Scor 100
Compilator cpp Status done
Runda Arhiva ICPC Marime 0.64 kb
#include <cstdio>
#define MOD 19997
#define MAXN 1000000
int v[MAXN+1], d[MAXN+1];
int main(){
    int n, i, minim;
    FILE *fin, *fout;
    fin=fopen("twoton.in", "r");
    fout=fopen("twoton.out", "w");
    fscanf(fin, "%d", &n);
    for(i=1; i<=n; i++){
        fscanf(fin, "%d", &v[i]);
    }
    d[n]=1;
    minim=v[n];
    for(i=n-1; i>0; i--){
        if(v[i]<minim){
            d[i]=1+d[i+1];
            minim=v[i];
        }else{
            d[i]=1+2*d[i+1];
        }
        if(d[i]>=MOD){
            d[i]-=MOD;
        }
    }
    fprintf(fout, "%d\n", d[1]);
    fclose(fin);
    fclose(fout);
    return 0;
}