## 題目 [點我](https://onlinejudge.org/external/6/630.pdf) ## 題意 給定word 1~word n、test word 1~test word k 找跟test word i(1 <= i <= k)有著相同集合的word j(1 <= j <= n) ## 演算法 ## 程式碼 ```cpp= #include <bits/stdc++.h> using namespace std; vector <int> convertToInt(string str){ vector <int> cnt(26); for(int j = 0 ; j < str.length() ; j++){ cnt[str.at(j) - 'a']++; } return cnt; } bool cmpArr(vector <int> a , vector <int> b){ for(int i = 0 ; i < 26 ; i++){ if(a[i] != b[i]) return 0; } return 1; } void func(){ int n; cin >> n; vector <string> strArr; vector <vector <int>> cntArr; string str; for(int i = 0 ; i < n ; i++){ cin >> str; strArr.push_back(str); cntArr.push_back(convertToInt(str)); } vector <string> testStrArr; string tmp; while(1){ cin >> tmp; if(tmp.at(0) == 'E'){ break; } cout << "Anagrams for: " << tmp << endl; int cnt = 1; for(int i = 0 ; i < n ; i++){ if(cmpArr(cntArr[i] , convertToInt(tmp))){ cout << setw(3) << cnt << ") "<< strArr[i] << endl; cnt++; } } if(cnt == 1){ cout << "No anagrams for: " << tmp << endl; } } } int main() { int t; cin >> t; for(int k = 1 ; k < t ; k++){ func(); cout << endl; } func(); return 0; } ``` ## 我犯的錯 他說要數字要固定三格(setw(3)),但我沒注意到 他說測資間要換行,但我每次都有換,所以錯,換句話說,最後一次輸出不用換行 格式題,好噁心
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up