Submission #963038

#TimeUsernameProblemLanguageResultExecution timeMemory
963038antonFancy Fence (CEOI20_fancyfence)C++17
13 / 100
15 ms4208 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define pii pair<int,int> const int MAX_N = 1e5+1; const int mod =1e9+7; int h[MAX_N]; int w[MAX_N]; int nbp(int u){ return (u*(u+1LL)/2LL)%mod; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin>>n; int sw = 0; vector<pair<int, int>> ev; for(int i = 0; i<n; i++){ cin>>h[i]; } for(int i = 0; i<n; i++){ cin>>w[i]; sw = (sw+w[i])%mod; } h[n] = 0; w[n] = 0; for(int i= 0; i<=n; i++){ if(i == 0 || h[i] != h[i-1]){ ev.push_back({h[i], w[i]}); } else{ ev.back().second =(ev.back().second+w[i])%mod; } } int res= 0; res= nbp(sw); for(auto e: ev){ if(e.first == 2){ res = (res + 2LL*nbp(e.second))%mod; } } cout<<res<<endl; }
#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...