1018 錘子剪刀布

2021-10-18 14:46:08 字數 1969 閱讀 6565

現給出兩人的交鋒記錄,請統計雙方的勝、平、負次數,並且給出雙方分別出什麼手勢的勝算最大。

輸入格式:

輸入第 1 行給出正整數 n(≤10

​5​​ ),即雙方交鋒的次數。隨後 n 行,每行給出一次交鋒的資訊,即甲、乙雙方同時給出的的手勢。c 代表「錘子」、j 代表「剪刀」、b 代表「布」,第 1 個字母代表甲方,第 2 個代表乙方,中間有 1 個空格。

輸出格式:

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

輸入樣例:

10c j

j bc b

b bb c

c cc b

j bb c

j j輸出樣例:

5 3 2

2 3 5

b b

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

intmain()

else

if(str1[i]

=='j'

&&str2[i]

=='b'

)else

if(str1[i]

=='b'

&&str2[i]

=='c'

)else

if(str1[i]

=='j'

&&str2[i]

=='c'

)else

if(str1[i]

=='b'

&&str2[i]

=='j'

)else

if(str1[i]

=='c'

&&str2[i]

=='b'

)elseif(

(str1[i]

=='c'

&&str2[i]

=='c')||

(str1[i]

=='b'

&&str2[i]

=='b')||

(str1[i]

=='j'

&&str2[i]

=='j'))

}printf

("%d %d %d\n"

,jia_win,jia_ping,jia_wrong)

;printf

("%d %d %d\n"

,yi_win,yi_ping,yi_wrong);if

(((jia_c>jia_j)

&&(jia_c>jia_b))||

((jia_c>=jia_j)

&&(jia_c>jia_b)))

elseif(

((jia_b>jia_c)

&&(jia_b>jia_j))||

((jia_b>=jia_c)

&&(jia_b>=jia_j)))

elseif(

(jia_j>jia_c)

&&(jia_j>jia_b))if

(((yi_c>yi_j)

&&(yi_c>yi_b))||

((yi_c>=yi_j)

&&(yi_c>yi_b)))

elseif(

((yi_b>yi_c)

&&(yi_b>yi_j))||

((yi_b>=yi_c)

&&(yi_b>=yi_j)))

elseif(

(yi_j>yi_c)

&&(yi_j>yi_b)

)return0;

}

1018 錘子剪刀布

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

1018 錘子剪刀布

輸入格式 輸入第1行給出正整數n 105 即雙方交鋒的次數。隨後n行,每行給出一次交鋒的資訊,即甲 乙雙方同時給出的的手勢。c代表 錘子 j代表 剪刀 b代表 布 第1個字母代表甲方,第2個代表乙方,中間有1個空格。輸出格式 輸出第1 2行分別給出甲 乙的勝 平 負次數,數字間以1個空格分隔。第3行...

1018 錘子剪刀布

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