題目描述
輸入格式
輸入第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 個字母代表甲方,...