LuoguP5601 小D與筆試 題解
阿新 • • 發佈:2021-12-23
LuoguP5601 小D與筆試 題解
看上去有點看不懂,但細細看題後可以發現這道題目是很水的。
在輸入完題面及答案之後,就輸入每個題的時候列舉一下題面是否匹配,然後再匹配答案就行了,因為看資料範圍\(n,q,s\leqslant 100\)就肯定地知道列舉不會爆炸。
好像這是最不需要講的一道題目(當然A+B除外)。
那麼,直接上程式碼自己理解一下吧,有不懂的可以私信我哦。
#include <cstdio> #include <algorithm> #include <cstring> #include <string> #include <iostream> using namespace std; const char dx[5] = {' ', 'A', 'B', 'C', 'D'}; struct pre { string ps, ans; }p[107]; struct pro { string p, ans[5]; }s[107]; int n, q; int main() { scanf("%d%d", &n, &q); for(int i = 1; i <= n; ++i) cin >> p[i].ps >> p[i].ans; for(int i = 1; i <= q; ++i) { cin >> s[i].p >> s[i].ans[1] >> s[i].ans[2] >> s[i].ans[3] >> s[i].ans[4]; for(int j = 1; j <= n; ++j) if(s[i].p == p[j].ps) for(int k = 1; k <= 4; ++k) if(p[j].ans == s[i].ans[k]) printf("%c\n", dx[k]); } return 0; }