【題目】
猜數字遊戲是gameboy最喜歡的遊戲之一。遊戲的規則是這樣的:計算機隨機產生乙個四位數,然後玩家猜這個四位數是什麼。每猜乙個數,計算機都會告訴玩家猜對幾個數字,其中有幾個數字在正確的位置上。
比如計算機隨機產生的數字為1122。如果玩家猜1234,因為1,2這兩個數字同時存在於這兩個數中,而且1在這兩個數中的位置是相同的,所以計算機會告訴玩家猜對了2個數字,其中乙個在正確的位置。如果玩家猜1111,那麼計算機會告訴他猜對2個數字,有2個在正確的位置。
現在給你一段gameboy與計算機的對話過程,你的任務是根據這段對話確定這個四位數是什麼。
【輸入】
輸入資料有多組。每組的第一行為乙個正整數n(1<=n<=100),表示在這段對話中共有n次問答。在接下來的n行中,每行三個整數a,b,c。gameboy猜這個四位數為a,然後計算機回答猜對了b個數字,其中c個在正確的位置上。當n=0時,輸入資料結束。
【輸出】
每組輸入資料對應一行輸出。如果根據這段對話能確定這個四位數,則輸出這個四位數,若不能,則輸出"not sure"。
【樣例輸入】
6【題解】4815 2 1
5716 1 0
7842 1 0
4901 0 0
8585 3 3
8555 3 2
24815 0 0
2999 3 3
0【樣例輸出】
3585
not sure
從 1000~9999 列舉給出的案例數,如果其中乙個數符合給出的所有案例數,說明此數即為所猜中的數,記錄猜中的個數,如果猜中的個數只有唯一的乙個說明可以確定此數,否則不能確定此數!
匹配數字時:首先匹配相同位置是否有相同的數,有的話,計數存在數和位置數,然後再匹配一遍位置不相同但存在的數,且記錄存在數,最後比較存在數和位置數和給出的存在數和位置數是否相等,相等即為符合!有點繞感覺和離散一樣
#include#include#include#includeusing namespace std;
int a[110],b[110],c[110],n;
int check(int x,int y)
int sum1=0;
for(int i=0;i<4;i++) }
int sum2=0;
for(int i=0;i<4;i++)
}} if(sum1==c[y]&&sum2==b[y]) return 1;
else return 0;}
int main()
{ while(~scanf("%d",&n)&&n)
{ for(int i=0;i
手速場題解 E 中
題目 有一天,kiki 收到一張奇怪的信,信上要kiki 計算出給定數各個位上數字為偶數的和.eg.5548 結果為12 等於 4 8 kiki 很苦惱.想請你幫忙解決這個問題.輸入 輸入資料有多組,每組佔一行,只有乙個數字,保證數字在int範圍內 輸出 對於每組輸入資料,輸出一行,每兩組資料之間有...
wxpython手速測試程式
滾動條是什麼大家自然都是知道的,可以非常直觀地顯示資料的變化,或者可以非常方便地改變某些數值。此前在介紹按鈕 靜態文字 輸入文字這三個控制項時,相對來說比較乏味,所以這次我們採用需求引導的模式。假如想編寫乙個軟體用來檢測打字速度,同時能夠非常直觀地通過滾動條來顯示出來,應該怎麼寫?我們大致需要三個控...
ziheng 學習測手速
1.視窗 import tkinter as tk import time window tk.tk window.geometry 300x400 window.title 測手速遊戲 dian zan ci shu 0t2 time.time def zan global dian zan ci...