3042021-08-30 10:24:07Valaki2Fancy Fencecpp14Hibás válasz 13/10041ms38256 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
1Elfogadva2ms1812 KiB
2Hibás válasz2ms1972 KiB
subtask20/12
3Hibás válasz1ms1888 KiB
4Hibás válasz1ms1888 KiB
5Hibás válasz1ms1892 KiB
6Hibás válasz1ms1900 KiB
7Hibás válasz1ms1904 KiB
subtask313/13
8Elfogadva1ms1948 KiB
9Elfogadva17ms4752 KiB
10Elfogadva27ms8144 KiB
11Elfogadva39ms9304 KiB
12Elfogadva24ms10480 KiB
subtask40/15
13Hibás válasz1ms6052 KiB
14Hibás válasz4ms6816 KiB
15Hibás válasz23ms9524 KiB
16Hibás válasz30ms13604 KiB
17Hibás válasz35ms15680 KiB
subtask50/15
18Hibás válasz2ms11244 KiB
19Hibás válasz4ms12012 KiB
20Hibás válasz16ms14712 KiB
21Hibás válasz29ms18804 KiB
22Hibás válasz30ms20652 KiB
subtask60/18
23Hibás válasz1ms16180 KiB
24Hibás válasz2ms16208 KiB
25Hibás válasz2ms16240 KiB
26Hibás válasz1ms16260 KiB
27Hibás válasz1ms16276 KiB
subtask70/27
28Hibás válasz4ms17048 KiB
29Hibás válasz4ms17240 KiB
30Hibás válasz24ms19852 KiB
31Hibás válasz16ms20820 KiB
32Hibás válasz30ms24776 KiB
33Hibás válasz27ms26520 KiB
34Hibás válasz30ms28404 KiB
35Hibás válasz30ms30400 KiB
36Hibás válasz1ms25888 KiB
37Hibás válasz41ms32408 KiB
38Hibás válasz30ms34248 KiB
39Hibás válasz32ms36200 KiB
40Hibás válasz29ms38256 KiB