題目背景
國際乒聯現在主席沙拉拉自從上任以來就立志於推行一系列改革,以推動桌球運動在全球的普及。其中11分制改革引起了很大的爭議,有一部分球員因為無法適應新規則只能選擇退役。華華就是其中一位,他退役之後走上了桌球研究工作,意圖弄明白11分制和21分制對選手的不同影響。在開展他的研究之前,他首先需要對他多年比賽的統計資料進行一些分析,所以需要你的幫忙。
題目描述
華華通過以下方式進行分析,首先將比賽每個球的勝負列成一張表,然後分別計算在11分制和21分制下,雙方的比賽結果(截至記錄末尾)。
比如現在有這麼乙份記錄,(其中w表示華華獲得一分,l表示華華對手獲得一分):
wwwwwwwwwwwwwwwwwwwwwwlw
在11分制下,此時比賽的結果是華華第一局11比0獲勝,第二局11比0獲勝,正在進行第三局,當前比分1比1。而在21分制下,此時比賽結果是華華第一局21比0獲勝,正在進行第二局,比分2比1。如果一局比賽剛開始,則此時比分為0比0。直到分差大於或者等於2,才一局結束。
你的程式就是要對於一系列比賽資訊的輸入(wl形式),輸出正確的結果。
輸入輸出格式
輸入格式:
每個輸入檔案包含若干行字串(每行至多20個字母),字串有大寫的w、l和e組成。其中e表示比賽資訊結束,程式應該忽略e之後的所有內容。
輸出格式:
輸出由兩部分組成,每部分有若干行,每一行對應一局比賽的比分(按比賽資訊輸入順序)。其中第一部分是11分制下的結果,第二部分是21分制下的結果,兩部分之間由乙個空行分隔。
輸入輸出樣例
輸入樣例#1:
wwwwwwwwwwwwwwwwwwww
wwlwe
輸出樣例#1:
11:0
11:0
1:121:0
2:1【分析】
模擬…有坑
【**】
//noip 2003 [普及]桌球
#include
#include
#include
#include
#include
#include
#include
#define ll long long
#define m(a) memset(a,0,sizeof a)
#define fo(i,j,k) for(i=j;i<=k;i++)
using
namespace
std;
const
int mxn=100005;
char ch,s[mxn];
int cnt,sco1,sco2;
int main()
fo(i,1,cnt)
printf("%d:%d\n",sco1,sco2),sco1=sco2=0;
printf("\n");
fo(i,1,cnt)
printf("%d:%d\n",sco1,sco2);
printf("\n");
return
0;}
NOIP2003 普及組 桌球
這是一道模擬題。模擬題 使程式按照題目所敘述的方式進行,模擬整個過程。模擬演算法其實就是給你一堆資料,設計程式將整個模擬過程走一遍,然後得出結果。題目怎麼表述的,程式就怎麼執行。所以模擬題對於演算法設計的要求不高,但是需要選擇合適的資料結構來進行模擬。參考 模擬題考驗的是我們的 實現能力,簡單的模擬...
noip2003普及組 棧
棧 組合計數,卡特蘭數 o n 2 o n 2 o n2 首先任何一種合法的入棧 出棧操作序列都可以得到乙個不同的1 n的排列,因此可以得到的排列總數等於合法入棧 出棧操作序列的個數。該問題等價於求第n nn項cat alan catalan catala n數。在本題中我們使用公式 cnm cn ...
NOIP2023年普及組題解
這是第一題 首先,在做題之前要注意兩個地方 e 不一定出現在文字的末尾,也不一定出現在某行的末尾 比賽必須要領先2個球才能獲勝,11 10的比分是不存在的 好了,廢話不多說,直接上 include include include include include using namespace std...