#include <iostream>
#include <vector>
#include <unordered_map>
#include <cstdint>
using Etel = std::unordered_map<int, int>;
using Etelek = std::vector<Etel>;
struct RendelesTetel {
int etel;
int adag;
};
using Rendeles = std::vector<RendelesTetel>;
using Rendelesek = std::vector<Rendeles>;
void beolvas(Etelek &etelek, Rendelesek &rendelesek, int &k, std::istream &be = std::cin) {
int n, m;
be >> n >> m >> k;
etelek.resize(n);
for (auto &e : etelek) {
int db;
be >> db;
for (int i = 0; i < db; i++) {
int a, x;
be >> a >> x;
e.emplace(a, x);
}
}
rendelesek.resize(m);
for (auto &r : rendelesek) {
int db;
be >> db;
r.resize(db);
for (auto &t: r) {
be >> t.etel >> t.adag;
}
}
}
void feldolgoz(const Etelek &etelek, const Rendelesek &rendelesek, int k) {
const int n = static_cast<int>(etelek.size());
std::vector<uint64_t> etel_db(n + 1);
for (const auto &r : rendelesek) {
for (const auto &t : r) {
etel_db[t.etel] += t.adag;
}
}
std::vector<uint64_t> mennyisegek(k + 1);
for (int i = 1; i <= n; i++) {
const auto db = etel_db[i];
for (const auto &e : etelek[i - 1]) {
mennyisegek[e.first] += e.second * db;
}
}
for (int i = 1; i <= k; i++) {
std::cout << mennyisegek[i] << ' ';
}
std::cout << '\n';
}
int main() {
Etelek etelek;
Rendelesek rendelesek;
int k;
beolvas(etelek, rendelesek, k);
feldolgoz(etelek, rendelesek, k);
return 0;
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 1ms | 316 KiB | ||||
| subtask2 | 7/7 | ||||||
| 2 | Accepted | 46ms | 3660 KiB | ||||
| 3 | Accepted | 48ms | 3684 KiB | ||||
| 4 | Accepted | 48ms | 3736 KiB | ||||
| 5 | Accepted | 48ms | 4012 KiB | ||||
| 6 | Accepted | 48ms | 3876 KiB | ||||
| subtask3 | 12/12 | ||||||
| 7 | Accepted | 1ms | 512 KiB | ||||
| 8 | Accepted | 2ms | 316 KiB | ||||
| 9 | Accepted | 2ms | 316 KiB | ||||
| 10 | Accepted | 2ms | 316 KiB | ||||
| 11 | Accepted | 1ms | 316 KiB | ||||
| 12 | Accepted | 1ms | 316 KiB | ||||
| 13 | Accepted | 1ms | 408 KiB | ||||
| 14 | Accepted | 1ms | 316 KiB | ||||
| 15 | Accepted | 1ms | 316 KiB | ||||
| 16 | Accepted | 1ms | 316 KiB | ||||
| 17 | Accepted | 1ms | 324 KiB | ||||
| subtask4 | 13/13 | ||||||
| 18 | Accepted | 46ms | 3660 KiB | ||||
| 19 | Accepted | 48ms | 3684 KiB | ||||
| 20 | Accepted | 48ms | 3736 KiB | ||||
| 21 | Accepted | 48ms | 4012 KiB | ||||
| 22 | Accepted | 48ms | 3876 KiB | ||||
| 23 | Accepted | 46ms | 3628 KiB | ||||
| 24 | Accepted | 48ms | 3700 KiB | ||||
| 25 | Accepted | 48ms | 3864 KiB | ||||
| 26 | Accepted | 48ms | 3992 KiB | ||||
| 27 | Accepted | 48ms | 3800 KiB | ||||
| 28 | Accepted | 54ms | 4364 KiB | ||||
| 29 | Accepted | 52ms | 4156 KiB | ||||
| 30 | Accepted | 50ms | 4144 KiB | ||||
| 31 | Accepted | 54ms | 4424 KiB | ||||
| 32 | Accepted | 57ms | 4676 KiB | ||||
| 33 | Accepted | 61ms | 5044 KiB | ||||
| 34 | Accepted | 56ms | 4528 KiB | ||||
| 35 | Accepted | 50ms | 4124 KiB | ||||
| 36 | Accepted | 54ms | 4416 KiB | ||||
| subtask5 | 18/18 | ||||||
| 37 | Accepted | 1ms | 512 KiB | ||||
| 38 | Accepted | 46ms | 3660 KiB | ||||
| 39 | Accepted | 48ms | 3684 KiB | ||||
| 40 | Accepted | 48ms | 3736 KiB | ||||
| 41 | Accepted | 48ms | 4012 KiB | ||||
| 42 | Accepted | 48ms | 3876 KiB | ||||
| 43 | Accepted | 2ms | 316 KiB | ||||
| 44 | Accepted | 2ms | 316 KiB | ||||
| 45 | Accepted | 2ms | 316 KiB | ||||
| 46 | Accepted | 1ms | 316 KiB | ||||
| 47 | Accepted | 1ms | 316 KiB | ||||
| 48 | Accepted | 1ms | 408 KiB | ||||
| 49 | Accepted | 1ms | 316 KiB | ||||
| 50 | Accepted | 1ms | 316 KiB | ||||
| 51 | Accepted | 1ms | 316 KiB | ||||
| 52 | Accepted | 1ms | 324 KiB | ||||
| 53 | Accepted | 46ms | 3628 KiB | ||||
| 54 | Accepted | 48ms | 3700 KiB | ||||
| 55 | Accepted | 48ms | 3864 KiB | ||||
| 56 | Accepted | 48ms | 3992 KiB | ||||
| 57 | Accepted | 48ms | 3800 KiB | ||||
| 58 | Accepted | 54ms | 4364 KiB | ||||
| 59 | Accepted | 52ms | 4156 KiB | ||||
| 60 | Accepted | 50ms | 4144 KiB | ||||
| 61 | Accepted | 54ms | 4424 KiB | ||||
| 62 | Accepted | 57ms | 4676 KiB | ||||
| 63 | Accepted | 61ms | 5044 KiB | ||||
| 64 | Accepted | 56ms | 4528 KiB | ||||
| 65 | Accepted | 50ms | 4124 KiB | ||||
| 66 | Accepted | 54ms | 4416 KiB | ||||
| 67 | Accepted | 65ms | 4404 KiB | ||||
| 68 | Accepted | 67ms | 4840 KiB | ||||
| 69 | Accepted | 61ms | 4148 KiB | ||||
| 70 | Accepted | 59ms | 4168 KiB | ||||
| 71 | Accepted | 52ms | 4148 KiB | ||||
| 72 | Accepted | 70ms | 4148 KiB | ||||
| 73 | Accepted | 70ms | 3892 KiB | ||||
| 74 | Accepted | 65ms | 3936 KiB | ||||
| 75 | Accepted | 52ms | 5108 KiB | ||||
| 76 | Accepted | 63ms | 3892 KiB | ||||
| 77 | Accepted | 64ms | 6196 KiB | ||||
| 78 | Accepted | 45ms | 4148 KiB | ||||