10967 | 2024. 04. 22 17:17:08 | bovizdb | Szitakötő (50 pont) | cpp17 | Hibás válasz 12/50 | 17ms | 7092 KiB |
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define endl "\n"
#define pll pair<ll, ll>
#define fs first
#define sc second
#define vll vector<ll>
const ll mod = 1e9 + 7;
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
ll n, k;
cin >> n >> k;
vll v(n);
for (ll i = 0; i < n; i++)
cin >> v[i];
if (k == 1 && n > 1)
{
cout << 0;
return 0;
}
ll ans = 1;
vll w(n);
w[0] = v[0];
for (ll i = 1; i < n; i++)
w[i] = w[i-1] + v[i];
for (ll i = 0; i < k-1; i++)
{
if (w[i] <= w[k-1]-w[i])
{
ans *= 2;
ans %= mod;
}
}
for (ll i = k; i < n; i++)
{
if (w[i-1] <= v[i])
{
cout << 0;
return 0;
}
if (w[i-1] > w[n-1]-w[i-1])
{
ans *= 2;
ans %= mod;
}
else if (i < n-1)
{
if (w[i-1] > v[i] + v[i+1])
{
ans *= 2;
ans %= mod;
}
}
else
{
ans *= 2;
ans %= 1000000007;
}
}
if (k == n)
{
ans *= 2;
ans %= mod;
}
cout << ans;
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 12/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1828 KiB | |||
2 | Hibás válasz | 0/0 | 17ms | 5084 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2232 KiB | |||
4 | Elfogadva | 1/1 | 3ms | 2440 KiB | |||
5 | Elfogadva | 1/1 | 3ms | 2660 KiB | |||
6 | Elfogadva | 1/1 | 2ms | 2740 KiB | |||
7 | Elfogadva | 1/1 | 2ms | 2744 KiB | |||
8 | Hibás válasz | 0/1 | 3ms | 2736 KiB | |||
9 | Hibás válasz | 0/1 | 3ms | 2960 KiB | |||
10 | Hibás válasz | 0/2 | 3ms | 2980 KiB | |||
11 | Hibás válasz | 0/2 | 3ms | 3180 KiB | |||
12 | Hibás válasz | 0/2 | 2ms | 3284 KiB | |||
13 | Hibás válasz | 0/2 | 3ms | 3420 KiB | |||
14 | Elfogadva | 2/2 | 3ms | 3356 KiB | |||
15 | Hibás válasz | 0/2 | 3ms | 3364 KiB | |||
16 | Hibás válasz | 0/2 | 3ms | 3364 KiB | |||
17 | Hibás válasz | 0/2 | 3ms | 3508 KiB | |||
18 | Hibás válasz | 0/2 | 3ms | 3360 KiB | |||
19 | Hibás válasz | 0/2 | 3ms | 3364 KiB | |||
20 | Hibás válasz | 0/2 | 3ms | 3360 KiB | |||
21 | Elfogadva | 1/1 | 3ms | 3488 KiB | |||
22 | Hibás válasz | 0/2 | 14ms | 6380 KiB | |||
23 | Hibás válasz | 0/2 | 14ms | 6424 KiB | |||
24 | Hibás válasz | 0/2 | 17ms | 6384 KiB | |||
25 | Hibás válasz | 0/2 | 17ms | 6392 KiB | |||
26 | Elfogadva | 2/2 | 17ms | 6652 KiB | |||
27 | Hibás válasz | 0/2 | 12ms | 6844 KiB | |||
28 | Hibás válasz | 0/2 | 14ms | 6900 KiB | |||
29 | Hibás válasz | 0/2 | 14ms | 6948 KiB | |||
30 | Hibás válasz | 0/2 | 17ms | 6996 KiB | |||
31 | Elfogadva | 2/2 | 17ms | 7092 KiB |