답안 #517303

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
517303 2022-01-23T01:32:05 Z KoD ACM (COCI19_acm) C++17
50 / 50
3 ms 516 KB
#include <bits/stdc++.h>

using std::vector;
using std::array;
using std::pair;
using std::tuple;

int main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int N, M;
    std::cin >> N >> M;
    vector<tuple<int, int, std::string>> result(N + 1);
    for (auto& [solved, penalty, name] : result) {
        std::cin >> name;
        for (int j = 0; j < M; ++j) {
            std::string state;
            std::cin >> state;
            if (state.length() <= 2) {
                continue;
            }
            solved += 1;
            penalty += (std::stoi(state.substr(1, 1)) - 1) * 1200;
            penalty += std::stoi(state.substr(3, 2)) * 3600;
            penalty += std::stoi(state.substr(6, 2)) * 60;
            penalty += std::stoi(state.substr(9, 2));
        }
    }
    int ans = 1;
    const auto& [a, b, c] = result[N];
    for (int i = 0; i < N; ++i) {
        const auto& [d, e, f] = result[i];
        if (c == f) {
            continue;
        }
        if (d > a) {
            ans += 1;
        } else if (d == a and e < b) {
            ans += 1;
        } else if (d == a and e == b and f < c) {
            ans += 1;
        }
    }
    std::cout << ans << '\n';
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 208 KB Output is correct
2 Correct 3 ms 436 KB Output is correct
3 Correct 0 ms 316 KB Output is correct
4 Correct 3 ms 516 KB Output is correct
5 Correct 3 ms 508 KB Output is correct