(中等题)血战双十一

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 0 总提交人数: 0

题目描述

(虽然双十一已经过去了,但是这道题目不会过时 [狗头])

一年一度的购物节就要到来了,你作为小作坊电商地狗公司的程序员,收到了产品经理的请求。

你需要实现一种处理顾客购买请求的算法,统计库存,并对不合理请求进行报错。

顾客购买时,如果库存的商品数大于0,则对商品数减1,否则购买请求执行失败并报错。

输入

第一行输入一个数字,为数据组数T

之后输入两个数字n, m,分别为商品的种类和购买请求的数量。

接下来n行,每行有一个字符串和一个数字,分别表示商品名和库存数。

后面m行,每行一个字符串,表示购买的商品名。

0 <= n, m <= 100

输出

对于一组数据,如果所有购买请求都成功执行,输出n行,每行一个数字,表示每个商品剩下库存数。 注意输出的商品顺序与输入的顺序相同。

如果有请求未能成功执行,则输出"Out of stock!"。

每组数据之间用一个空行分隔。

输入样例

2
1 2
apple 1
apple
apple
3 4
brush 100
toothpaste 50
phone 10
brush
toothpaste
brush
phone

输出样例

Out of stock!

98
49
9

相关推荐