题目名称 | 227. [POI 1997] 阿里巴巴 |
---|---|
输入输出 | ali.in/out |
难度等级 | ★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 6 |
题目来源 | BYVoid 于2008-11-28加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:19, 提交:59, 通过率:32.2% | ||||
Makazeu | 100 | 0.007 s | 0.39 MiB | C++ |
HouJikan | 100 | 0.021 s | 0.31 MiB | C++ |
ZhouZn1 | 100 | 0.024 s | 16.35 MiB | Pascal |
任杰 | 100 | 0.025 s | 1.27 MiB | C++ |
skyfly | 100 | 0.025 s | 16.47 MiB | C++ |
王瑞祥K | 100 | 0.026 s | 1.19 MiB | Pascal |
BYVoid | 100 | 0.027 s | 1.21 MiB | C++ |
kaaala | 100 | 0.038 s | 16.48 MiB | C++ |
lingyixiaoyao | 100 | 0.060 s | 13.25 MiB | C++ |
bing | 100 | 0.080 s | 3.40 MiB | Pascal |
本题关联比赛 | |||
20091112练习 |
关于 阿里巴巴 的近10条评论(全部评论) | ||||
---|---|---|---|---|
居然没有
0 0 1 0 0 2这种贸易QAQ 数据淼 | ||||
你怎么做的??
tony_don
2013-05-18 18:31
2楼
| ||||
我Fuck!!哪错了?
Makazeu
2012-01-18 10:49
1楼
|
想要“芝麻开门”,必须拥有一定数量的钱币,其中包括至少z枚金币,s枚银币和m枚铜币。 最初,阿里巴巴拥有三种钱币若干枚。他可以按照一定规则和芝麻之门的守护者进行交易。 每一种规则用以下形式表示:
z1, s1, m1 -> z2, s2, m2 (zi, si, mis属于集合{0,1,2,3,4})。
这样一种规则表示阿里巴巴可以将z1枚金币, s1枚银币, m1枚铜币换成z2枚金币, s2枚银币, m2枚铜币。 一次交易而得的钱币可以继续参加下一次的交易。
任务
从文件中读入几组数据;对于每一组数据:
对每一组数据,判断是否存在有限次的交易,使阿里巴巴能开启芝麻之门。如果是,则将最少交易次数输出,否则在输出NIE(波兰文NO)
把结果写进文件中
输入格式 文件的第一行有一个整数d<=10,表示数据的组数。
接下来是d组数据,每组占若干行。
第一行是三个数zp, sp, mp ,属于集合{0,1,2,3,4}。表示阿里巴巴最初拥有的金银铜数目。
第二行是三个数z, s, m , 属于集合{0,1,2,3,4}。表示芝麻开门所需的金银铜数目。
第三行是规则总数r,1<=r<=10。
以下r行每行有六个数z1, s1, m1, z2, s2, m2 ,属于集合{0,1,2,3,4}。表示一种简单的交易z1, s1, m1 -> z2, s2, m2。
数字之间由若干个空格隔开。
输出格式
文件的第i行为第i组数据的答案:
一个非负整数——阿里巴巴要开启芝麻之门所需的最少交易次数,或者
单词NIE(波兰文NO)
样例输入
2 2 2 2 3 3 3 3 0 1 1 2 0 0 1 0 1 0 2 0 1 1 0 0 0 2 1 1 1 2 2 2 4 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 1 0 0 2 0 0 0 2 2
样例输出
NIE 9