제출 #1087042

#제출 시각아이디문제언어결과실행 시간메모리
1087042Dennis_JasonFoehn Phenomena (JOI17_foehn_phenomena)C++14
30 / 100
1033 ms3672 KiB
#include <bitset> #include <cmath> #include <functional> #include <algorithm> #include <numeric> #include <system_error> #include <deque> #include <fstream> #include <iomanip> #include <iostream> #include <iterator> #include <limits> #include <list> #include <map> #include <unordered_map> #include <queue> #include <set> #include <stack> #include <string> #include <vector> #include <cstring> #include <climits> #define pb push_back #define MOD 1000000007 #define NMAX 200001 #define nl '\n' #define pii1 pair<int, pair<int,int>> (1,(1,2)); #define pii pair<int,int> #define tpl tuple<int,int,int> #define int long long using namespace std; ifstream fin("data.in"); ofstream fout("data.out"); const int INF=1e12; /* ====================DEMONSTRATION====================== If Ai < Ai+1, the temperature of the wind decreases by S degrees per altitude. If Ai ≧ Ai+1, the temperature of the wind increases by T degrees per altitude. S=1,T=2 0 6 3 8 0,-6,0,-5 =========================END=========================== */ int n,q,s,t; vector<int>v; signed main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cin>>n>>q>>s>>t; v.resize(n+1); for(int i=0;i<=n;++i) { cin>>v[i]; } for(int i=1;i<=q;++i) { int st,dr,x; cin>>st>>dr>>x; if(x<0) { for(int j=st;j<=dr;++j) v[j]-=abs(x); } else { for(int j=st;j<=dr;++j) v[j]+=abs(x); } int ans=0; for(int j=1;j<=n;++j) { if(v[j]>v[j-1]) ans+=(v[j-1]-v[j])*s; else ans+=(v[j-1]-v[j])*t; } cout<<ans<<nl; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...