國際乒聯現在主席沙拉拉自從上任以來就立志於推行一系列改革,以推動桌球運動在全球的普及。其中11分制改革引起了很大的爭議,有一部分球員因為無法適應新規則只能選擇退役。華華就是其中一位,他退役之後走上了桌球研究工作,意圖弄明白11分制和21分制對選手的不同影響。在開展他的研究之前,他首先需要對他多年比賽的統計資料進行一些分析,所以需要你的幫忙。題目描述華華通過以下方式進行分析,首先將比賽每個球的勝負列成一張表,然後分別計算在11分制和21分制下,雙方的比賽結果(截至記錄末尾)。比如現在有這麼乙份記錄,(其中w表示華華獲得一分,l表示華華對手獲得一分):wwwwwwwwwwwwwwwwwwwwwwlw在1分制下,此時比賽的結果是華華第一局1比0獲勝,第二局11比0獲勝,正在進行第三局,當前比分1比1。而在21分制下,此時比賽結果是華華第一局21比0獲勝,正在進行第二局,比分2比1。如果一局比賽剛開始,則此時比分為0比0。直到分差大於或者等於2,才一局結束。你的程式就是要對於一系列比賽資訊的輸入(wl形式),輸出正確的結果。輸入格式每個輸入檔案包含若干行字串,字串有大寫的w、l和e組成。其中e表示比賽資訊結束,程式應該忽略e之後的所有內容。輸出格式輸出由兩部分組成,每部分有若干行,每一行對應一局比賽的比分(按比賽資訊輸入順序)。其中第一部分是11分制下的結果,第二部分是21分制下的結果,兩部分之間由乙個空行分隔。
輸入輸出樣例
輸入wwwwwwwwwwwwwwwwwwww
wwlwe
輸出11:0
11:0
1:121:0
2:1說明/提示每行至多25個字母,最多有2500行
#include
//這題首先e後面可能有資訊但是要忽略,其次在比分相差不到2時是繼續比賽的
using
namespace std;
//比如 11:12,在11分賽制下要繼續比下去
intmain()
int sum1=
0,sum2=0;
for(
int i=
0;s[i]
!='e'
;i++
)else
if(s[i]
=='l'
) count++;if
((sum1>=
11||sum2>=11)
&&(abs(sum1-sum2)
>=2)
)}
cout<":"/剩餘的比分輸出
sum1=0;
sum2=0;
cout
int i=
0;s[i]
!='e'
;i++
)else
if(s[i]
=='l'
) count++;if
((sum1>=
21||sum2>=21)
&&(abs(sum1-sum2)
>=2)
)}cout<":"/system("pause");
return0;
}
洛谷P1042桌球
問題傳送門 題目本身並不難,主要是考慮許多種情況。思路 若華華或者對手首先到達了11或21,那麼就判斷是否分差大於2,大於2就輸出,不大於2就繼續往下做。最後輸出剩餘的分數,不多說,直接看 include using namespace std int a 2 char c string s int...
洛谷題解P1042 桌球
洛谷題解 p1042 桌球 題目背景 國際乒聯現在主席沙拉拉自從上任以來就立志於推行一系列改革,以推動桌球運動在全球的普及。其中11分制改革引起了很大的爭議,有一部分球員因為無法適應新規則只能選擇退役。華華就是其中一位,他退役之後走上了桌球研究工作,意圖弄明白11分制和 21分制對選手的不同影響。在...
洛谷 P1042 桌球 題解
演算法 模擬 此題說實在話細節上的問題還是比較多的,對得起 pj 的難度。細節1 在判斷一場比賽是否結束時,如果是 11 10 的比分,比賽還要繼續,只有到雙方分差大於 2 分且至少有一方得到了大於等於 11 分的成績,一場比賽才可以結束 假設在 11 分制下 細節2 在輸出時,如果一局比賽的比分為...