結果
問題 |
No.483 マッチ並べ
|
ユーザー |
|
提出日時 | 2020-03-11 07:46:38 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 759 bytes |
コンパイル時間 | 817 ms |
コンパイル使用メモリ | 71,936 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-16 00:03:23 |
合計ジャッジ時間 | 2,650 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 53 |
コンパイルメッセージ
main.cpp:22:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type] 22 | main() | ^~~~
ソースコード
#include<iostream> #include<vector> using namespace std; int N; vector<pair<int,int> >G[100][100]; bool used[100][100]; pair<int,int>dfs(int x,int y) { pair<int,int>ret=make_pair(1,G[x][y].size()); used[x][y]=true; for(pair<int,int>v:G[x][y]) { if(!used[v.first][v.second]) { pair<int,int>q=dfs(v.first,v.second); ret.first+=q.first; ret.second+=q.second; } } return ret; } main() { cin>>N; for(int i=0;i<N;i++) { int a,b,c,d;cin>>a>>b>>c>>d; a--,b--,c--,d--; G[a][b].push_back(make_pair(c,d)); G[c][d].push_back(make_pair(a,b)); } for(int i=0;i<100;i++)for(int j=0;j<100;j++) { if(used[i][j])continue; pair<int,int>p=dfs(i,j); if(p.first<p.second/2) { cout<<"NO"<<endl; return 0; } } cout<<"YES"<<endl; }