結果
問題 |
No.3109 Swap members
|
ユーザー |
|
提出日時 | 2025-04-18 22:17:17 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 148 ms / 2,000 ms |
コード長 | 799 bytes |
コンパイル時間 | 1,127 ms |
コンパイル使用メモリ | 85,356 KB |
実行使用メモリ | 43,920 KB |
最終ジャッジ日時 | 2025-04-18 22:17:24 |
合計ジャッジ時間 | 6,222 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 52 |
ソースコード
#include <iostream> #include <vector> #include <map> int main() { int N, K; std::cin >> N >> K; std::vector<std::string> S(N), T(N); for (int i = 0; i < N; i++) { std::cin >> S[i]; } for (int i = 0; i < N; i++) { std::cin >> T[i]; } std::vector<std::map<std::string, int>> S_groups(K); std::vector<std::map<std::string, int>> T_groups(K); for (int i = 0; i < N; i++) { int group = i % K; S_groups[group][S[i]]++; T_groups[group][T[i]]++; } bool possible = true; for (int i = 0; i < K; i++) { if (S_groups[i] != T_groups[i]) { possible = false; break; } } std::cout << (possible ? "Yes" : "No") << std::endl; return 0; }