问题1618--背包很好

1618: 背包很好

时间限制: 1 Sec  内存限制: 128 MB
提交: 303  解决: 95
[状态] [讨论版] [提交] [命题人:]
题目描述

现在商店中有n个商品,每个商品都有各自的重量,小明拿着一个容量为c的背包去买东西,买东西前他已经列好清单,共有m个操作要做,每个操作是一个数字,表示要对编号为这个数字的商品进行操作(商品从1开始编号),如果此商品在货架上则把它装入背包,如果此商品在背包中则把它取出来,现在请你帮小明算一下,他在买东西的过程的会不会出现背包容量太小装不下的情况,如果有的话输出“这个背包太小 如果没有出现装不下的情况则输出这个背包很好,并且输出操作过程中背包最重的是多少

输入

包含多组测试实例,每组实例第一行为n,m,cn<=100),接下来一行包含n个数字,每个数字表示每个商品的重量(重量0到1000),接下来输入m个操作,当n=m=c=0时结束。

输出

如果该组实例在进行完所有操作过程中重量没有超过c则输出“这个背包很好,背包在购买商品时最重装了mix kg的商品”,否则输出“这个背包太小”,输出时不加引号,占一行。

样例输入 Copy
6 3 5
2 3 6 5 4 6
5 6 2
5 5 44
3 6 5 9 4
2 3 5 2 3
0 0 0
样例输出 Copy
这个背包太小
这个背包很好,背包在购买商品时最重装了15kg的商品
来源/分类