Pagini recente » Cod sursa (job #1829982) | Cod sursa (job #599892) | Cod sursa (job #67329) | Cod sursa (job #1361477) | Cod sursa (job #1709510)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <stdio.h>
int n;
int a[1000024];
int count = 0;
int K=0;
long long comparatorul_pulii;
long long count2;
int i;
FILE *fin = fopen("twoton.in", "r");
FILE *fout = fopen("twoton.out", "w");
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 wtf2(int i)
{
count2++;
if (count2 >= 19997) {
count2 -= 19997;
}
if (i == n - 1) {
return a[i];
}
if (a[i] < comparatorul_pulii) {
comparatorul_pulii=a[i];
return a[i];
} else {
count2=count2*2;
return comparatorul_pulii;
}
}
int main()
{
fscanf(fin, "%d", &n);
for (int i = 0; i < n; ++i) {
fscanf(fin, "%d", &a[i]);
}
comparatorul_pulii=a[n-1];
count2=1;
for(i=n-2;i>=0;i--)
{
if(a[i]>comparatorul_pulii)
count2*=2;
else
comparatorul_pulii=a[i];
count2++;
if (count2 >= 19997)
{
count2 -= 19997;
}
}
//wtf(0);
fprintf(fout, "%d\n", count2%19997);
fclose(fin);
fclose(fout);
}