Submission #742537

#TimeUsernameProblemLanguageResultExecution timeMemory
742537Dan4LifeFancy Fence (CEOI20_fancyfence)C++17
0 / 100
1 ms340 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pb push_back #define sz(a) (int)a.size() const int mxN = (int)1e5+10; const int MOD = (int)1e9+7; int Tw, Th; int n, h[mxN], w[mxN]; vector<pair<int,int>> v; int32_t main(){ cin >> n; int ans = 0; for(int i = 1; i <= n; i++) cin >> h[i]; for(int i = 1; i <= n; i++) cin >> w[i]; for(int i = 1; i <= n; i++){ int W = w[i]; Tw+=w[i], Th+=h[i]; while(i<n and h[i]==h[i+1]) W+=w[++i]; v.pb({h[i],W}); } n = sz(v); ans+=Tw*(Tw+1)/2; ans%=MOD; for(auto [h,w] : v){ //cout << h << " " << w << "\n"; if(h==1) continue; ans+=w*(w+1); ans%=MOD; } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...