Cod sursa(job #1709593)

Utilizator UPT_SyntaxErrorUPT SyntaxError UPT_SyntaxError Data 28 mai 2016 13:00:31
Problema Twoton Scor 0
Compilator cpp Status done
Runda ONIS 2016 - Runda - 2 - ACM ICPC Romanian Programming Contest Marime 1.05 kb
#include <stdlib.h>
#include <stdio.h>

int a[1000024];
int min;

int compute(int n){
    int v[n];
    min=a[n-1];
    v[n-1]=1;
    for(int i=n-1;i>0;i--){
        if(a[i-1]<=min)
        {
            min=a[i-1];
            v[i-1]=1+v[i];
        }
        else{
            v[i-1]=1+2*v[i];
        }
    }
    return v[0];
}

int main()
{
    freopen("twoton.in","r",stdin);
    freopen("twoton.out","w",stdout);
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    printf("%d",compute(n)%19997);
    return 0;
}
/*

int n;
int a[1000024];
int count = 0;

int wtf(int i)
{
  count++;
  if (count >= 19997) {
    count -= 19997;
  }
  if (i == n - 1) {
    return a[i];
  }


  if (a[i] < wtf(i + 1)) {
    return a[i];
  } else {
    return wtf(i + 1);
  }
}

int main()
{
  FILE *fin = fopen("twoton.in", "r");
  FILE *fout = fopen("twoton.out", "w");
  fscanf(fin, "%d", &n);
  for (int i = 0; i < n; ++i) {
    fscanf(fin, "%d", &a[i]);
  }
  wtf(0);
  fprintf(fout, "%d\n", count);
  fclose(fin);
  fclose(fout);
  }
*/