精華區beta Marginalman 關於我們 聯絡資訊
1544. Make The String Great 如果兩個相鄰的字元是同一個字母的大小寫,就把這兩個字元移除 回傳移除過後的字串 思路: 用兩個index 一個指向目前的字元:i 一個指向要比較的字元:idx 當i跟idx是大小寫關係就把idx-- 反之把idx++,並且s[idx]=s[i] C code: bool chk(char a,char b){ return a-b==32 || b-a==32; } char* makeGood(char* s) { int idx=0; for (int i=1;i<strlen(s);i++){ if (idx>-1 &&chk(s[idx],s[i])){ idx--; }else{ idx++; s[idx]=s[i]; } } idx++; if (idx==0){ return ""; } if (idx<strlen(s)){ s[idx]='\0'; } return s; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.82.26.211 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1712298917.A.1C8.html
wwndbk: 大師 04/05 14:36
digua: 大師 04/05 14:45
SecondRun: 大師 04/05 14:50