#2194. Bulls and Cows
Bulls and Cows
Description
公牛和母牛 "游戏需要两个人一起玩。思考者想出一个数字,猜测者试图猜出这个数字。
思考者想到的是一个十进制的四位数的数字。这个数字的所有数字都是不同的,而且这个数字可能有一个前导零。它不可能有一个以上的前导零,因为它的所有数字都是不同的。猜测者试图猜测这个数字。他做了一系列的猜测,尝试实验性的数字,并从第一个人那里得到答案,其格式为 "x公牛y母牛"。当然,实验数和被求数都是由四位数表示的,所有的数字都是不同的,并且可以有一个前导零。
例如,我们假设思考者想到的数字是0123。那么猜测者的实验号码1263将得到 "1牛2牛 "的回答(3在两个数字中占据相同的位置,1和2在两个数字中都存在,但它们占据不同的位置)。另外,数字8103的答案将是 "2公牛1母牛"(类推,1和3占据相同的位置,0占据不同的位置)。
当猜测者得到 "4公牛0母牛 "的答案时,游戏就结束了。
现在,猜测者已经做了几次猜测,想知道他的下一次猜测是否可能是最后一次。
输入
第一个输入行包含一个整数n(1≤n≤10),代表已经猜中的次数。然后是n行 "ai bi ci "的形式,其中ai是第i个实验数,bi是公牛的数量,ci是母牛的数量(1≤i≤n,0≤bi,ci,bi+ci≤4)。实验数是正确的,即每个实验数正好包含四个数字,在每个实验数中,所有的四个数字都是不同的,并且可以有一个前导零。所有的实验数字都是不同的。由于猜测者还没有猜到这个数字,所以答案 "4公牛0母牛 "是不存在的。
输出
如果输入的数据足以确定所求数字,则在一行中打印出有四位数的数字。如果少于四位数,则加上前导零。如果数据不够,则打印 "Need more data",不加引号。如果思考者恰好在他的回答中犯了一个错误,打印 "Incorrect data",不加引号。
2 1263 1 2 8103 2 1
Need more data
2 1234 2 2 1256 0 2
2134
2 0123 1 1 4567 1 2
Incorrect data