3052021-08-30 10:25:44Valaki2Fancy Fencecpp14Hibás válasz 13/10041ms30836 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define pb push_back

const ll mod = 1e9 + 7;

void solve() {
    ll n;
    cin >> n;
    vector<ll> height(n, 0ll);
    vector<ll> width(n, 0ll);
    for(ll &x : height) cin >> x;
    for(ll &x : width) cin >> x;
    ll overall_width = 0;
    ll current_width = 0;
    ll ans = 0;
    height.pb(1ll);
    width.pb(0ll);
    for(ll i = 0; i <= n; ++i) {
        overall_width += width[i];
        overall_width %= mod;
        if(height[i] == 2) {
            current_width += width[i];
            current_width %= mod;
        } else {
            ans += (current_width * (current_width + 1)) / 2;
            ans %= mod;
            current_width = 0;
        }
    }
    ans *= 2;
    ans %= mod;
    ans += (overall_width * (overall_width + 1)) / 2;
    ans %= mod;
    cout << ans << "\n";
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    solve();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva2ms1788 KiB
2Hibás válasz2ms1976 KiB
subtask20/12
3Hibás válasz1ms1940 KiB
4Hibás válasz1ms1944 KiB
5Hibás válasz1ms1956 KiB
6Hibás válasz1ms1960 KiB
7Hibás válasz1ms1960 KiB
subtask313/13
8Elfogadva2ms2008 KiB
9Elfogadva12ms4864 KiB
10Elfogadva23ms8196 KiB
11Elfogadva23ms9408 KiB
12Elfogadva23ms10572 KiB
subtask40/15
13Hibás válasz1ms6128 KiB
14Hibás válasz4ms6744 KiB
15Hibás válasz14ms9536 KiB
16Hibás válasz28ms13712 KiB
17Hibás válasz30ms15696 KiB
subtask50/15
18Hibás válasz1ms11304 KiB
19Hibás válasz4ms11912 KiB
20Hibás válasz16ms14756 KiB
21Hibás válasz28ms18744 KiB
22Hibás válasz28ms20636 KiB
subtask60/18
23Hibás válasz1ms16196 KiB
24Hibás válasz1ms16220 KiB
25Hibás válasz2ms16276 KiB
26Hibás válasz2ms16280 KiB
27Hibás válasz1ms16316 KiB
subtask70/27
28Hibás válasz4ms17032 KiB
29Hibás válasz4ms17212 KiB
30Hibás válasz17ms19832 KiB
31Hibás válasz17ms20768 KiB
32Hibás válasz28ms24784 KiB
33Hibás válasz41ms26516 KiB
34Hibás válasz32ms28428 KiB
35Hibás válasz28ms30396 KiB
36Hibás válasz1ms25848 KiB
37Hibás válasz28ms30836 KiB
38Hibás válasz30ms30836 KiB
39Hibás válasz32ms30836 KiB
40Hibás válasz29ms30836 KiB