Pagini recente » Istoria paginii runda/exemplu12 | Istoria paginii runda/sumulare_11_12_2003 | Cod sursa (job #1567495) | Arhiva de probleme | Cod sursa (job #1712964)
#include<bits/stdc++.h>
using namespace std;
ifstream in("twoton.in");
ofstream out("twoton.out");
int a[1000024], v[1000010];
int n, cnt[1000100];
int main()
{
in >> n;
for (int i = 1;i <= n;++i)
in >> a[i];
v[n] = a[n];
cnt[n] = 1;
for (int i = n - 1;i >= 1;--i)
if (a[i]>v[i + 1])
{
v[i] = v[i + 1];
cnt[i] = 1 + 2 * cnt[i + 1];
cnt[i] %= 19997;
}
else
{
v[i] = a[i];
cnt[i] = cnt[i + 1] + 1;
cnt[i] %= 19997;
}
out << cnt[1] % 19997;
return 0;
}