zzuli:小G的日常之遊戲
阿新 • • 發佈:2018-11-26
http://acm.zzuli.edu.cn/problem.php?id=2399
題目描述
小G最近在玩一個字元消除遊戲。給定一個只包含大寫字母的字串s,消除過程是如下進行的:
(1)從前往後如果在s中找到連續兩個相同的字母,那麼這兩個連續相同的字母會被同時消除,餘下的字串拼成新的字串。
(2)反覆重複步驟(1),直到新的字串不包含相鄰的相同字元為止。
輸入
ABAABAC經過第一輪得到ABBAC,經過第二輪得到AAC,經過第三輪得到C
輸出
一個字串s(s的長度不超過1e6)
樣例輸入
ABAABAC
樣例輸出
C
棧的後進先出操作
#include<stdio.h> #include<string.h> #define N 1000200 char str[N],ans[N]; int main() { int i,len,j; scanf("%s",str); len=strlen(str); ans[0]=str[0]; j=1; for(i=1;i<len;i++) { ans[j]=str[i]; //進棧 if(j>=1&&ans[j]==ans[j-1]) //出棧 j-=2; j++; } ans[j]='\0'; puts(ans); return 0; }