リトルAとリトルBは推測の数字を遊んでいます。リトルBは毎回1、2、3からランダムに1つを選択し、リトルAも毎回1、2、3から1
つの推測を選択します。彼らはこのゲームを合計3回プレイしました。リトルAに戻ってください。何回正しく推測しましたか?
入力推測配列は毎回小さいAの推測であり、回答配列は毎回小さいBの選択です。推測と答え
の長さは両方とも3に等しい。
例1:
入力:guess = [1,2,3]、answer = [1,2,3]
出力:3
説明:LittleAは毎回正しく推測されます。
例2:
入力:guess = [2,2,3]、answer = [3,2,1]
出力:1
説明:リトルAは2回目だけ正しく推測しました。
アイデア:同じ添え字を持つ推測配列と回答配列の同じ数の要素
//方法1
int game1(int* guess, int guessSize, int* answer, int answerSize){
return(*guess==*answer)+(*++guess==*++answer)+(*++guess==*++answer);
}
//方法2
int game2(int* guess, int guessSize, int* answer, int answerSize)
{
int count = 0;//统计猜对的次数
for (int i = 0; i < guessSize; i++)
{
if (guess[i] == answer[i])//比较两个数组相同位置下的值是否相等
{
count++;
}
}
return count;
}
Likouでの実行結果は、それぞれ方法1と方法2に対応します。