#include <stdio.h>
int main() {
int n, m;
scanf("%d", &n); // jumlah data pendonor
scanf("%d", &m); // jumlah desa
int jumlah[100][5] = {0}; // jumlah[desa][golongan]
int volume[100][5] = {0}; // volume[desa][golongan]
for (int i = 0; i < n; i++) {
int desa, golongan, vol;
scanf("%d %d %d", &desa, &golongan, &vol);
jumlah[desa][golongan]++;
volume[desa][golongan] += vol;
}
char *golNama[5] = {"", "A", "B", "AB", "O"};
for (int i = 1; i <= m; i++) {
printf("Desa %d; ", i);
for (int g = 1; g <= 4; g++) {
printf("%s: %d %d", golNama[g], jumlah[i][g], volume[i][g]);
if (g < 4) printf(", ");
}
printf("\n");
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbigpIHsKICAgIGludCBuLCBtOwogICAgc2NhbmYoIiVkIiwgJm4pOyAvLyBqdW1sYWggZGF0YSBwZW5kb25vcgogICAgc2NhbmYoIiVkIiwgJm0pOyAvLyBqdW1sYWggZGVzYQoKICAgIGludCBqdW1sYWhbMTAwXVs1XSA9IHswfTsgLy8ganVtbGFoW2Rlc2FdW2dvbG9uZ2FuXQogICAgaW50IHZvbHVtZVsxMDBdWzVdID0gezB9OyAvLyB2b2x1bWVbZGVzYV1bZ29sb25nYW5dCgogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICBpbnQgZGVzYSwgZ29sb25nYW4sIHZvbDsKICAgICAgICBzY2FuZigiJWQgJWQgJWQiLCAmZGVzYSwgJmdvbG9uZ2FuLCAmdm9sKTsKICAgICAgICBqdW1sYWhbZGVzYV1bZ29sb25nYW5dKys7CiAgICAgICAgdm9sdW1lW2Rlc2FdW2dvbG9uZ2FuXSArPSB2b2w7CiAgICB9CgogICAgY2hhciAqZ29sTmFtYVs1XSA9IHsiIiwgIkEiLCAiQiIsICJBQiIsICJPIn07CgogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbTsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCJEZXNhICVkOyAiLCBpKTsKICAgICAgICBmb3IgKGludCBnID0gMTsgZyA8PSA0OyBnKyspIHsKICAgICAgICAgICAgcHJpbnRmKCIlczogJWQgJWQiLCBnb2xOYW1hW2ddLCBqdW1sYWhbaV1bZ10sIHZvbHVtZVtpXVtnXSk7CiAgICAgICAgICAgIGlmIChnIDwgNCkgcHJpbnRmKCIsICIpOwogICAgICAgIH0KICAgICAgICBwcmludGYoIlxuIik7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0K
Desa 1; A: 0 0, B: 1 250, AB: 1 450, O: 1 500
Desa 2; A: 1 500, B: 1 200, AB: 0 0, O: 0 0
Desa 3; A: 2 450, B: 0 0, AB: 0 0, O: 1 350