Qingyu的暗杀名单
题号:NC214728
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Qingyu , M901 星系永远滴神!
传闻 Qingyu 非常记仇,有一本小本子,每当有人说出一些他不喜欢的话的时候,他总会在小本子上记上一笔,并对这个人增加一定的仇恨值,当某个人的仇恨值达到一定程度的时候,他就会永久登上 Qingyu 的暗杀名单。同样,当有人说出一些他非常喜欢的话的时候,他会给这个人减去一定的仇恨值。
Qingyu 的暗杀名单会以仇恨值从大到小排序,当仇恨值相等时,会以仇恨值增加的次数从大到小排序,如果仍然相等,会以名字的字典序从小到大排序。
根据给出的信息,请你计算 Qingyu 的暗杀名单上都有谁?

输入描述:

第一行,两个整数 n 和 k,中间用一个空格隔开,表示有 n 句话会触发仇恨值的计算,当仇恨值达到 k 时会登上 Qingyu 的暗杀名单。
接下来 n 行,每行包含一个字符串 s 和一个数字 x,中间用一个空格隔开,当 x 为正表示 s 这句话 Qingyu 不喜欢,会增加 x 点仇恨值,当 x 为负表示 s 这句话 Qingyu 很喜欢,会减少 |x| 点仇恨值。
接下来一行,一个整数 m 表示有 m 个人。
以下输出 m 个人的信息。
每个人的信息中,
包含一行一个字符串 sn 表示姓名,
一行一个整数 t 表示该人说了 t 句话,
以及 t 行每行一个字符串表示说过的话 sa。
输入保证所有字符串中仅包含英文字母。

输出描述:

输出共 d 行, d 表示暗杀名单上的人数。
每行包括一个字符串 sn 表示姓名和一个数字 c 表示积累的仇恨值,中间用一个空格隔开。
示例1

输入

复制
3 1
tcl 1
tql -1
txdy -2
3
Vanis
2
Qingyu
tql
wkn
2
Qingyu
tcl
wyx
2
tcl
txdy

输出

复制
wkn 1
wyx -1