Pagini recente » Cod sursa (job #2055987) | Cod sursa (job #45401) | Cod sursa (job #2884230) | Cod sursa (job #2089072) | Cod sursa (job #1709006)
#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
const int nmax = 1000010, mod = 19997;
int n, a[nmax], dp[nmax];
int main()
{
freopen("twoton.in", "r", stdin);
freopen("twoton.out", "w", stdout);
scanf("%i", &n);
for (int i = 1; i <= n; ++ i)
scanf("%i", &a[i]);
dp[n] = 1;
int mn = a[n];
for (int i = n - 1; i >= 1; -- i)
{
if (a[i] < mn)
dp[i] = (dp[i + 1] + 1) % mod;
else
dp[i] = (2 * dp[i + 1] + 1) % mod;
mn = min(mn, a[i]);
}
printf("%i", dp[1]);
}