題目連結: https://zerojudge.tw/ShowProblem?problemid=a275
# 解題思路
使用陣列計算字母出現次數,一個字串用加的,另一個字串用減的,最後陣列有非零值,表示無法經由調整順序兩個單字會一樣。
# 程式碼
#include<iostream> | |
#include<cstring> | |
using namespace std; | |
string s1,s2,STOP = "STOP!!"; | |
int main() {ios::sync_with_stdio(false);cin.tie(0); | |
int i, ASCII[128]; | |
while(getline(cin,s1)) { | |
if(s1==STOP) break; | |
memset(ASCII, 0, sizeof(ASCII)); | |
getline(cin,s2); | |
for(i = 0; s1[i]; i++){ | |
ASCII[s1[i]]++; | |
ASCII[s2[i]]--; | |
} | |
for(i = 33; i <= 126; i++) | |
if(ASCII[i]) | |
break; | |
cout<<(i == 127 ? "yes\n" : "no\n"); | |
} | |
return 0; | |
} |