codevs 4650 破損的鍵盤

2021-08-08 18:41:06 字數 1146 閱讀 5499

題目描述 description

有一天,你需要打乙份檔案,但是你的鍵盤壞了,上面的」home」鍵和」end」鍵會時不時地按下,而你卻毫不知情,甚至你都懶得開啟顯示器,當你開啟顯示器之後,出現在你的面前的是一段悲劇的文字。

輸入描述 input description

輸入只有一行,即這份檔案,這份檔案只包含小寫字母和』[『以及』]』,用』[『代替」home」鍵,用』]』代替」end」鍵。

輸出描述 output description

你的任務是在開啟顯示器之前,計算出這份悲劇的文件。

樣例輸入 sample input

kdg[gek]h[itj

de[co]vs

樣例輸出 sample output

itjgekkdgh

codevs

資料範圍及提示 data size & hint

包含多組測試資料,直到檔案結束。

字串長度小於10000個字元。

不包含空格。

雙端佇列。不知道原理,大概推測出s+q.front()是代表s陣列裡從q.front()開始到最後所有的元素。在遇到s[i]=』\0』時也會自動停止,所以輸出時是一串一串輸出。

就像樣例:

佇列裡是這樣:10,4,0,8

於是輸出s[10]–s[12],s[4]–s[6],s[0]–s[2],s[8],組成答案。

以上只是推測,等待確認。

網上學來的**。

#include

#include

#include

#include

#include

using

namespace

std;

const

int maxn=100000+10;

char s[maxn];

int main()

else

if(s[i]==']')

i++;

}while(!q.empty())

printf("\n");

}return

0;}

codevs 4650 破損的鍵盤(stl)

ps 現學的list 打起來好心累qaq go to the problem 題目描述 description 有一天,你需要打乙份檔案,但是你的鍵盤壞了,上面的 home 鍵和 end 鍵會時不時地按下,而你卻毫不知情,甚至你都懶得開啟顯示器,當你開啟顯示器之後,出現在你的面前的是一段悲劇的文字。...

4650 破損的鍵盤

時間限制 1 s 空間限制 16000 kb 題目等級 gold 題解有一天,你需要打乙份檔案,但是你的鍵盤壞了,上面的 home 鍵和 end 鍵會時不時地按下,而你卻毫不知情,甚至你都懶得開啟顯示器,當你開啟顯示器之後,出現在你的面前的是一段悲劇的文字。輸入描述 input descriptio...

破損的鍵盤

題目描述 有一天,你需要打乙份檔案,但是你的鍵盤壞了,上面的 home 鍵和 end 鍵會時不時地按下,而你卻毫不知情,甚至你都懶得開啟顯示器,當你開啟顯示器之後,出現在你的面前的是一段悲劇的文字。輸入描述 包含多組測試資料,每組資料只有一行,即這份檔案,這份檔案只包含小寫字母和 以及 不包含空格,...