// 題目

把廣播稿壓成一行

Flatten the Announcement Script・pync-03-01

  • APCS 中級
  • 字串切割與解析
  • Python 程式設計・03 Strings

時間限制 1 秒・記憶體 31 MB

到 Aki-Judge 送出

送出程式要先用 Discord 帳號登入 Aki-Judge,並加入註解 Annotated 的 Discord 伺服器(免費)。看題目不用登入。

題目敘述

捷運車站的廣播稿是分行打出來的,打完再貼進語音合成系統,而那套系統只吃一行,多一行都不行。上傳的介面不會抗議多出來的行——它會安安靜靜地把換行丟掉,於是整段廣播變成一長串連在一起的字,合成出來的聲音一口氣唸到底,中間完全不喘。

稿子裡的兩種換行意思並不一樣。單純的換行只是為了讓站務員在窄窄的螢幕上讀得下去,它本身沒有任何意思,被它隔開的兩行應該直接黏在一起,中間什麼都不加。空行則是寫稿的人刻意放進去的停頓,而語音合成只有看到 , 才會停一下,所以每一個空行都要變成一個 ,。

你處理它們的順序會決定答案。段落換行是比單純換行更長的樣式,而且它裡面就包含一個單純換行,所以如果你先把單純換行壓平,等你要找段落換行的時候它們早就不見了,整段廣播裡的停頓就這樣悄悄消失。長的樣式要先處理。

輸入格式

好幾行直到輸入結束:整份稿子。空行代表段落停頓。稿子裡不會出現連續兩個空行,開頭與結尾都不會是空行,而且至少有一行不是空的。

輸出格式

一行:語音合成系統應該收到的內容。

範例

範例 1

輸入

各位旅客您好
本列車即將到達台北車站

下車的旅客請提前準備

輸出

各位旅客您好本列車即將到達台北車站,下車的旅客請提前準備

到 Aki-Judge 送出

送出程式要先用 Discord 帳號登入 Aki-Judge,並加入註解 Annotated 的 Discord 伺服器(免費)。看題目不用登入。

卡住了可以到 Discord 的 #程式問題 發問,小墨助教會先給提示,不會直接給答案。