Submission #941509

# Submission time Handle Problem Language Result Execution time Memory
941509 2024-03-09T03:10:40 Z vjudge1 Foehn Phenomena (JOI17_foehn_phenomena) C++17
10 / 100
85 ms 10740 KB
#include <bits/stdc++.h>
using namespace std;

using lint=long long;
const int INF=0x3f3f3f3f;
const lint LINF=0x3f3f3f3f3f3f3f3f;

namespace Type{
    using pair_int=std::pair<int,int>;
    using pair_lint=std::pair<lint,lint>;
    using pair_real=std::pair<double,double>;
    using vector_int=vector<int>;
    using vector_lint=vector<lint>;
    using vector2d_int=vector<vector<int>>;
    using vector2d_lint=vector<vector<lint>>;
}

//#define FILE_IO
#define SINGLE_TEST
//#define MULTI_TEST

void solve(){
    int n,q,s,t;
    cin>>n>>q>>s>>t;

    lint last=0,ans=0;

    auto calc=[&](lint val){
        if(val>=0) return -t*val;
        return -val*s;
    };
    Type::vector_lint diff(n+10);
    for(int i=0;i<=n;i++){
        lint temp;
        cin>>temp;
        diff[i]=temp-last;
        last=temp;
        ans+=calc(diff[i]);
    }
    for(int i=1;i<=q;i++){
        lint left,right,k;
        cin>>left>>right>>k;
        ans-=calc(diff[left]);
        diff[left]+=k;
        ans+=calc(diff[left]);
        if(right<n){
            ans-=calc(diff[right+1]);
            diff[right+1]-=k;
            ans+=calc(diff[right+1]);
        }
        cout<<ans<<"\n";
    }
}

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
#ifdef FILE_IO
    freopen("../text.in","r",stdin);
#endif
    int T;
#ifdef SINGLE_TEST
    T=1;
#endif
#ifdef MULTI_TEST
    cin>>T;
#endif
    while(T--) solve();
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Incorrect 1 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 85 ms 8788 KB Output is correct
2 Correct 74 ms 9296 KB Output is correct
3 Correct 77 ms 9816 KB Output is correct
4 Correct 70 ms 9296 KB Output is correct
5 Correct 76 ms 10576 KB Output is correct
6 Correct 66 ms 9628 KB Output is correct
7 Correct 77 ms 9552 KB Output is correct
8 Correct 76 ms 10372 KB Output is correct
9 Correct 77 ms 10740 KB Output is correct
10 Correct 76 ms 9356 KB Output is correct
11 Correct 60 ms 9500 KB Output is correct
12 Correct 82 ms 10060 KB Output is correct
13 Correct 61 ms 10320 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Incorrect 1 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -