10015 - Finding Missing Cards
#include <iostream> using namespace std; void Slove(void) { int n, number; char c; const char card[4]={'S', 'H', 'C', 'D'}; bool card_flg[4][13]; for(int i=0; i<4; ++i) for (int j=0; j<13; ++j) card_flg[i][j]=false; cin >> n; for (int i=0; i<n; ++i) { cin >> c >> number; for (int j=0; j<4; ++j) if (c == card[j]) card_flg[j][--number]=true; } for (int i=0; i<4; ++i) for (int j=0; j<13; ++j) if (!card_flg[i][j]) cout << card[i] << " " << j+1 << endl; } int main(void) { Slove(); return 0; }
文字と数字の関連付けしてフラグ管理をしました。