描述
alice和bob還有其他幾位好朋友在一起玩傳話遊戲。這個遊戲是這樣進行的:首先,所有遊戲者按順序站成一排,alice站第一位,bob站最後一位。然後,alice想一句話悄悄告訴第二位遊戲者,第二位遊戲者又悄悄地告訴第三位,第三位又告訴第四位……以此類推,直到倒數第二位告訴bob。兩位遊戲者在傳話中,不能讓其他人聽到,也不能使用肢體動作來解釋。最後,bob把他所聽到的話告訴大家,alice也把她原本所想的話告訴大家。
由於傳話過程中可能出現一些偏差,遊戲者越多,bob最後聽到的話就與alice所想的越不同。bob聽到的話往往會變成一些很搞笑的東西,所以大家玩得樂此不疲。經過幾輪遊戲後,alice注意到在兩人傳話中,有些詞彙往往會錯誤地變成其他特定的詞彙。alice已經收集到了這樣的乙個詞彙轉化的列表,她想知道她的話傳到bob時會變成什麼樣子,請你寫個程式來幫助她。
輸入
輸入包括多組資料。第一行是整數 t,表示有多少組測試資料。每組資料第一行包括兩個整數 n 和 m,分別表示遊戲者的數量和單詞轉化列表長度。隨後有 m 行,每行包含兩個用空格隔開的單詞 a 和 b,表示單詞 a 在傳話中一定會變成 b。輸入資料保證沒有重複的 a。最後一行包含若干個用單個空格隔開的單詞,表示alice所想的句子,句子總長不超過100個字元。所有單詞都只包含小寫字母,並且長度不超過20,同乙個單詞的不同時態被認為是不同的單詞。你可以假定不在列表中的單詞永遠不會變化。
1 ≤ t ≤ 100
小資料:2 ≤ n ≤ 10, 0 ≤ m ≤ 10
大資料:2 ≤ n ≤ 100, 0 ≤ m ≤ 100
輸出對於每組測試資料,單獨輸出一行「case #c: s」。其中,c 為測試資料編號,s 為bob所聽到的句子。s 的格式與輸入資料中alice所想的句子格式相同。
樣例輸入
24 3
ship sheep
sinking thinking
thinking sinking
the ship is sinking
10 5
tidy tiny
tiger liar
tired tire
tire bear
liar bear
a tidy tiger is tired
樣例輸出
case #1: the sheep is thinking
case #2: a tiny bear is bear
解法:
模擬題。
將對應規則儲存在map裡面,方便轉換。
用istringstream將輸入的一行字串,分別儲存在vector裡面,
最後遍歷n-1次,應用轉換規則。
用getline()讀入一行字串前,需要先用getchar()將上一行的『\n』過濾掉才行
1: #include
2: #include
3: #include
4: #include
5: #include
6:using
namespace std;
7:int main()
18: vector ve;
19:string s;
20: getchar();
21: getline(cin,s);
22: istringstream sin(s);
23:while(sin>>a) ve.push_back(a);
24:
25:for(int i=1;i
26:for(int j=0;j
27:if(ma.find(ve[j])!=ma.end())
28: ve[j]=ma[ve[j]];
29: }
30: }
31: cout<<"case #"<":";
32:for(int k=0;k
33: cout<<" "<
34: }
35: cout<
36: }
37: }
傳話遊戲 程式設計之美挑戰賽
題目描述 時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb alice和bob還有其他幾位好朋友在一起玩傳話遊戲。這個遊戲是這樣進行的 首先,所有遊戲者按順序站成一排,alice站第一位,bob站最後一位。然後,alice想一句話悄悄告訴第二位遊戲者,第二位遊戲者又悄悄地告訴第...
2013程式設計之美資格賽 傳話遊戲
時間限制 1000ms 記憶體限制 256mb alice和bob還有其他幾位好朋友在一起玩傳話遊戲。這個遊戲是這樣進行的 首先,所有遊戲者按順序站成一排,alice站第一位,bob站最後一位。然後,alice想一句話悄悄告訴第二位遊戲者,第二位遊戲者又悄悄地告訴第三位,第三位又告訴第四位 以此類推...
2013程式設計之美資格賽 傳話遊戲
時間限制 1000ms 記憶體限制 256mb alice和bob還有其他幾位好朋友在一起玩傳話遊戲。這個遊戲是這樣進行的 首先,所有遊戲者按順序站成一排,alice站第一位,bob站最後一位。然後,alice想一句話悄悄告訴第二位遊戲者,第二位遊戲者又悄悄地告訴第三位,第三位又告訴第四位 以此類推...