제출 #1115035

#제출 시각아이디문제언어결과실행 시간메모리
1115035AdamGSFire (JOI20_ho_t5)C++17
0 / 100
1075 ms22832 KiB
#include<bits/stdc++.h>

using namespace std;
int main() {
    int n, q, t, l, p, s;
    cin >> n >> q;
    vector<int> dis;
    vector<vector<int>> fakty;
    vector<vector<pair<int, int>>> zap(n);
    vector<int> dod;
    for (int i = 0; i < n; i++) {
        cin >> s;
        dis.push_back(s);
    }
    for (int i = 0; i < q; i++) {
        cin >> t >> l >> p;
        zap[t - 1].push_back({l, p});
        fakty.push_back({t, l, p});
    }
    map<vector<int>, int> wyniki;
    for (int i = 0; i < n; i++) {
        for (int j = n - 1; j > 0; j--) {
            if (dis[j - 1] > dis[j]) {
                dis[j] = dis[j - 1];
            }
        }
        for (pair<int, int> z : zap[i]) {
            long long s = 0;
            for(int y = z.first; y <= z.second; y++) {
                s += dis[y - 1];
            }
            wyniki[{i + 1, z.first, z.second}] = s;
            //cout << i + 1 << " " << z.first << " " << z.second << endl;
        }
    }
    for(vector<int> i : fakty) {
        //cout << i[0] << " " << i[1] << " " << i[2] << endl;
        cout << wyniki[i] << 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...