PAT 乙級真題 1008 錘子剪刀布

2022-04-09 20:23:47 字數 1264 閱讀 4757

題目描述

輸入格式

輸入第1行給出正整數n(<=105),即雙方交鋒的次數。隨後n行,每行給出一次交鋒的資訊,即甲、乙雙方同時給出的的手勢。c代表「錘子」、j代表「剪刀」、b代

表「布」,第1個字母代表甲方,第2個代表乙方,中間有1個空格。

輸出格式

輸出第1、2行分別給出甲、乙的勝、平、負次數,數字間以1個空格分隔。第3行給出兩個字母,分別代表甲、乙獲勝次數最多的手勢,中間有1個空格。如果解不唯

一,則輸出按字母序最小的解。

輸入樣例

10

c jj b

c bb b

b cc c

c bj b

b cj j

輸出樣例
5 3 2

2 3 5

b b

題目思路

注意輸入字元時%c前面加空格,防止讀入空格

#includeusing namespace std;

int main()

, p[3];

char in1, in2;

scanf("%d", &n);

while (n--)

else if (in1 == 'c'&&in2 == 'j')

else if (in1 == 'j'&&in2 == 'c')

else if (in1 == 'j'&&in2 == 'b')

else if (in1 == 'b'&&in2 == 'c')

else if (in1 == 'b'&&in2 == 'j')

}printf("%d %d %d\n", a1, b1, c1);

printf("%d %d %d\n", c1, b1, a1);

if (q[2] >= q[1] && q[2] >= q[0])printf("b ");

else if (q[1] > q[2] && q[1] >= q[0])printf("c ");

else if (q[0] > q[1] && q[0] > q[2])printf("j ");

if (p[2] >= p[1] && p[2] >= p[0])printf("b");

else if (p[1] > p[2] && p[1] >= p[0])printf("c");

else if (p[0] > p[1] && p[0] > p[2])printf("j");

return 0;

}

PAT乙級真題 1018 錘子剪刀布

現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入格式 輸入第 1 行給出正整數 n 10 5 即雙方交鋒的次數。隨後 n 行,每行給出一次交鋒的資訊,即甲 乙雙方同時給出的的手勢。c 代表 錘子 j 代表 剪刀 b 代表 布 第 1 個字母代表甲方,第 2...

PAT(乙級)1008 錘子剪刀布 20

大家應該都會玩 錘子剪刀布 的遊戲 現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入第1行給出正整數n 105 即雙方交鋒的次數。隨後n行,每行給出一次交鋒的資訊,即甲 乙雙方同時給出的的手勢。c代表 錘子 j代表 剪刀 b代 表 布 第1個字母代表甲方,...

PAT乙級題 1018 錘子剪刀布

圖略 現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入格式 輸入第 1 行給出正整數 n 10 5 即雙方交鋒的次數。隨後 n 行,每行給出一次交鋒的資訊,即甲 乙雙方同時給出的的手勢。c 代表 錘子 j 代表 剪刀 b 代表 布 第 1 個字母代表甲方,...