| Task: | Tulostaulu |
| Sender: | MikaelM |
| Submission time: | 2025-01-18 13:38:07 +0200 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | 100 |
| group | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 20 |
| #2 | ACCEPTED | 20 |
| #3 | ACCEPTED | 60 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.01 s | 1, 3 | details |
| #2 | ACCEPTED | 0.01 s | 2, 3 | details |
| #3 | ACCEPTED | 0.01 s | 3 | details |
| #4 | ACCEPTED | 0.00 s | 1, 2, 3 | details |
| #5 | ACCEPTED | 0.00 s | 3 | details |
| #6 | ACCEPTED | 0.01 s | 3 | details |
Code
#include<bits/stdc++.h>
using namespace std;
#define all(x) x.begin(),x.end()
using ll = long long;
// nimi, tehtava, pisteet
map<string, unordered_map<char, int>> taulu;
// nimi, pisteet, aika
unordered_map<string, pair<int, int>> f;
// pisteet, aika, nimi
vector<pair<pair<int, int>, string>> v;
int main() {
ios_base::sync_with_stdio(0); cin.tie(0);
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
int n, m, k;
cin >> n >> m >> k;
for (int i = 1; i <= n; i++) {
string nimi;
cin >> nimi;
taulu[nimi] = {};
// f[nimi] = {0, 0};
}
for (int i = 1; i <= m; i++) {
string nimi;
char tehtava;
int pisteet;
cin >> nimi >> tehtava >> pisteet;
if (pisteet == 0) continue;
if (pisteet > taulu[nimi][tehtava]) {
taulu[nimi][tehtava] = pisteet;
int yht = 0;
for (char c = 'A'; c <= 'J'; c++) if (taulu[nimi][c]) yht += taulu[nimi][c];
f[nimi] = {yht, -i};
}
}
for (auto u : f) {
v.push_back({{u.second.first, u.second.second}, u.first});
}
sort(v.rbegin(), v.rend());
for (auto u : v) {
cout << u.second << " " << u.first.first << "\n";
}
for (auto u : taulu) {
if (!f.count(u.first)) {
cout << u.first << " 0\n";
}
}
}
Test details
Test 1
Group: 1, 3
Verdict: ACCEPTED
| input |
|---|
| 1 5000 10 zsyad zsyad J 14 zsyad A 40 zsyad D 34 ... |
| correct output |
|---|
| zsyad 1000 |
| user output |
|---|
| zsyad 1000 |
Test 2
Group: 2, 3
Verdict: ACCEPTED
| input |
|---|
| 100 5000 1 eayoy mkiie sqd mgq ... |
| correct output |
|---|
| ujogxx 100 dadxy 100 ttldevgm 100 awbj 100 j 100 ... |
| user output |
|---|
| ujogxx 100 dadxy 100 ttldevgm 100 awbj 100 j 100 ... Truncated |
Test 3
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 100 5000 10 bsvhdn xlxadb gbc sadll ... |
| correct output |
|---|
| ezgermxsii 927 urclsrvlq 924 shgvs 919 xwkqtroxqr 918 oovi 893 ... |
| user output |
|---|
| ezgermxsii 927 urclsrvlq 924 shgvs 919 xwkqtroxqr 918 oovi 893 ... Truncated |
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
| input |
|---|
| 1 0 1 xoezwspspf |
| correct output |
|---|
| xoezwspspf 0 |
| user output |
|---|
| xoezwspspf 0 |
Test 5
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 100 5000 10 bwv jxz cpktj mhzevc ... |
| correct output |
|---|
| afvgeut 0 ai 0 amfrsvuqao 0 beadkfbr 0 bkgztu 0 ... |
| user output |
|---|
| afvgeut 0 ai 0 amfrsvuqao 0 beadkfbr 0 bkgztu 0 ... Truncated |
Test 6
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 100 5000 10 yifvbbjcz cnpkni qvltt ngpe ... |
| correct output |
|---|
| vgyo 10 msgagpngrd 10 cnpkni 10 lpwlq 10 qguwtubeqi 10 ... |
| user output |
|---|
| vgyo 10 msgagpngrd 10 cnpkni 10 lpwlq 10 qguwtubeqi 10 ... Truncated |
