3082021-08-30 11:09:53Valaki2Fancy Fencecpp14Időlimit túllépés 30/1001.095s8788 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 ans = 0;
    for(ll i = 0; i < n; ++i) {
        ll cur_height = height[i];
        ll temp_height = ((cur_height * (cur_height + 1)) / 2) % mod;
        ll temp_width = ((width[i] * (width[i] + 1)) / 2) % mod;
        ans += (temp_width * temp_height) % mod;
        ans %= mod;
        for(ll j = i + 1; j < n; ++j) {
            cur_height = min(cur_height, height[j]);
            temp_width = (width[i] * width[j]) % mod;
            temp_height = ((cur_height * (cur_height + 1)) / 2) % mod;
            ans += (temp_width * temp_height) % mod;
            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
1Elfogadva2ms1756 KiB
2Elfogadva7ms1808 KiB
subtask212/12
3Elfogadva1ms1868 KiB
4Elfogadva1ms1872 KiB
5Elfogadva1ms1872 KiB
6Elfogadva1ms1884 KiB
7Elfogadva1ms1884 KiB
subtask30/13
8Elfogadva6ms1912 KiB
9Időlimit túllépés1.054s2312 KiB
10Időlimit túllépés1.049s4304 KiB
11Időlimit túllépés1.014s5468 KiB
12Időlimit túllépés1.019s6640 KiB
subtask40/15
13Elfogadva6ms6044 KiB
14Elfogadva509ms6488 KiB
15Időlimit túllépés1.008s7028 KiB
16Időlimit túllépés1.008s8392 KiB
17Időlimit túllépés1.014s8476 KiB
subtask50/15
18Elfogadva6ms7828 KiB
19Elfogadva500ms8112 KiB
20Időlimit túllépés1.062s7720 KiB
21Időlimit túllépés1.095s8488 KiB
22Időlimit túllépés1.085s8484 KiB
subtask618/18
23Elfogadva1ms7812 KiB
24Elfogadva2ms7828 KiB
25Elfogadva7ms7832 KiB
26Elfogadva6ms7832 KiB
27Elfogadva7ms7832 KiB
subtask70/27
28Elfogadva505ms8112 KiB
29Elfogadva500ms8112 KiB
30Időlimit túllépés1.093s7716 KiB
31Időlimit túllépés1.095s7720 KiB
32Időlimit túllépés1.093s8484 KiB
33Időlimit túllépés1.095s8420 KiB
34Időlimit túllépés1.095s8484 KiB
35Időlimit túllépés1.062s8744 KiB
36Elfogadva1ms7876 KiB
37Időlimit túllépés1.093s8740 KiB
38Időlimit túllépés1.095s8724 KiB
39Időlimit túllépés1.078s8788 KiB
40Időlimit túllépés1.093s8724 KiB