1018 錘子剪刀布 20

2021-08-18 18:31:45 字數 1639 閱讀 8896

[1018]. 錘子剪刀布 (20)

時間限制 100 ms記憶體限制 65536 kb**長度限制 8000 b判題程式 standard 作者 chen, yue

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

輸入格式:

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

輸出格式:

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

輸入樣例:

10 c j

j b

c b

b b

b c

c c

c b

j b

b c

j j

輸出樣例:

5 3 2

2 3 5

b b我用了兩個二維陣列來表示甲,乙兩人的勝,平,負和剪刀,錘子,布的次數,最後對於勝,平,負的統計只要將甲,乙在石頭剪刀布各個情況下的勝平負進行累加就可以了

#include"iostream"

#include"vector"

using namespace std;

int main()

;//行代表剪刀,石頭,布;列代表勝,平,負;

int yi[3][3]=;

for(i=0;ifor(vector

::iterator it=s.begin();it!=s.end();it+=2)

else if(*(it+1)=='c')

else

}else if(*it=='c')

else if(*(it+1)=='c')

else

}else

else if(*(it+1)=='c')

else

} }

cout<<(jia[0][0]+jia[1][0]+jia[2][0])<<" "<<(jia[0][1]+jia[1][1]+jia[2][1])<<" "<<(jia[0][2]+jia[1][2]+jia[2][2])

<<(yi[0][0]+yi[1][0]+yi[2][0])<<" "<<(yi[0][1]+yi[1][1]+yi[2][1])<<" "<<(yi[0][2]+yi[1][2]+yi[2][2])

<<(jia[0][0] >

jia[1][0]?(jia[0][0]>jia[2][0]?"j":"b"):(jia[1][0]>jia[2][0]?"c":"b"))<<" "<<(yi[0][0]>

yi[1][0]?(yi[0][0]>yi[2][0]?"j":"b"):(yi[1][0]>yi[2][0]?"s":"b"));

//這一行看著有點亂,耐心的看完,其實一點都不複雜就是亂了點,主要是對甲乙兩人勝率最高的出法進行比較和輸出(好吧其實就是我懶得分開寫)

return 0;

}

1018 錘子剪刀布 20

時間限制 100 ms 記憶體限制 32000 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 大家應該都會玩 錘子剪刀布 的遊戲 兩人同時給出手勢,勝負規則如圖所示 現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入格式 ...

1018 錘子剪刀布 20

時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 大家應該都會玩 錘子剪刀布 的遊戲 兩人同時給出手勢,勝負規則如圖所示 現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入格式 ...

1018 錘子剪刀布 20

時間限制 100 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 大家應該都會玩 錘子剪刀布 的遊戲 兩人同時給出手勢,勝負規則如圖所示 現給出兩人的交鋒記錄,請統計雙方的勝 平 負次數,並且給出雙方分別出什麼手勢的勝算最大。輸入格式 ...