結果

問題 No.3109 Swap members
ユーザー YUSUKE OGIWARA
提出日時 2025-04-18 22:41:10
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 126 ms / 2,000 ms
コード長 1,038 bytes
コンパイル時間 1,708 ms
コンパイル使用メモリ 135,920 KB
実行使用メモリ 15,024 KB
最終ジャッジ日時 2025-04-18 22:41:17
合計ジャッジ時間 5,693 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 52
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
#include<iomanip>
#include<vector>
#include<math.h>
#include<algorithm>
#include<map>
#include<queue>
#include<stack>
#include<deque>
#include<set>
#include<cmath>
#include<ctime>
#include<bitset>
#define rep(i,a,b) for(int i=a;i<=b;i++)
using namespace std;
using ll = long long;
using vec = vector<ll>;
using Graph = vector<vec>;
using Pair = pair<ll,ll>;

void debug1(vec v){for(auto x:v)cout << x << ' ';cout << endl;}
void debug2(vector<Pair> v){for(auto x:v)cout << '(' << x.first << ',' << x.second << ')' << endl;}
void debug3(Graph v){rep(i,0,v.size()-1)debug1(v[i]);cout << endl;}

int main(){
    int n,k;
    cin >> n >> k;
    vector<string>s(n+1),t(n+1);
    rep(i,1,n)cin >> s[i];
    rep(i,1,n)cin >> t[i];
    bool ans = true;
    rep(i,1,k){
        multiset<string> p,q;
        int j=i;
        while(j <= n){
            p.insert(s[j]);
            q.insert(t[j]);
            j += k;
        }
        if(p != q)ans = false;
    }
    if(ans)cout << "Yes" << endl;
    else cout << "No" << endl;
}
0