| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1284667 | axoryn | 세계 지도 (IOI25_worldmap) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T;
if(!(cin>>T)) return 0;
while(T--){
int N,M;
cin>>N>>M;
vector<vector<int>> adj(N, vector<int>(N,0));
for(int i=0;i<M;i++){
int a,b;cin>>a>>b;--a;--b;
adj[a][b]=adj[b][a]=1;
}
int K=2*max(1,N);
cout<<K<<"\n";
for(int i=0;i<K;i++){
for(int j=0;j<K;j++){
if(j) cout<<" ";
cout<<K;
}
cout<<"\n";
}
for(int i=0;i<N;i++){
vector<int> row;
for(int j=0;j<N;j++){
row.push_back(i+1);
if(i==j) row.push_back(i+1);
else row.push_back(adj[i][j]? j+1 : i+1);
}
for(int rep=0;rep<2;rep++){
for(int c=0;c<K;c++){
if(c) cout<<" ";
cout<<row[c];
}
cout<<"\n";
}
}
}
return 0;
}
