제출 #1152990

#제출 시각아이디문제언어결과실행 시간메모리
1152990susanthenerdSegway (COI19_segway)C++20
0 / 100
10 ms328 KiB
#include <iostream>
#include <vector>
#include <array>

using namespace std;

struct concurent {
    int timp, power;
    array<int, 3> inter{};
};

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n, m;
    cin >> n;


    vector<concurent> v(n);

    for (auto &it: v) {
        for (auto &it2: it.inter)
            cin >> it2;
    }

    cin >> m;

    vector<bool> boost(300);

    while (m--) {
        int x;
        cin >> x;
        boost[x - 1] = true;
    }

    vector<int> sp(300 * 50 + 1);
    for (int i = 0; i < 300; ++i) {
        vector<int> nou(300 * 50 + 1);

        for (auto &[t, p, inter]: v) {
            if (p == 0) {
                if (boost[i])
                    p = (sp[t - 1] - sp[0] + 20) % 20;
                t += inter[i / 100];
            } else {
                t += 1;
                --p;
            }
            ++nou[t];
        }

        for (int j = 1; j < nou.size(); ++j) {
            nou[j] += nou[j - 1];
        }

        sp = nou;
    }

    for (const auto &it: v) {
        cout << it.timp << '\n';
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...