이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <iostream>
#include <vector>
#include <map>
#include <stack>
using namespace std;
const int mod=1e9+7;
#define int long long
signed main(){
    int n;
    cin>>n;
    vector<int> v(n),h(n),pre(n+1);
    map<int,int> mp;
    for(int& i:h)cin>>i;
    for(int& i:v)cin>>i;
    for(int i=0;i<n;i++)pre[i+1]=pre[i]+v[i];
    long long ans=0;
    for(int i=0;i<n;i++){
        ans+=(((v[i]*(v[i]+1)/2)%mod)*(h[i]*(h[i]+1)/2)%mod)%mod;
        ans%=mod;
        int he=h[i];
        for(int j=i+1;j<n;j++){
            he=min(he,h[j]);
            ans+=(((pre[j]-pre[i])%mod)*(he*(he+1)/2)%mod)%mod;
            ans%=mod;
            //cout<<ans<<' ';
        }
        //cout<<ans<<'\n';
    }
    cout<<ans;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |