結果
問題 | No.479 頂点は要らない |
ユーザー |
|
提出日時 | 2016-10-11 13:10:56 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,032 bytes |
コンパイル時間 | 2,096 ms |
コンパイル使用メモリ | 180,240 KB |
実行使用メモリ | 29,676 KB |
最終ジャッジ日時 | 2024-12-23 05:42:31 |
合計ジャッジ時間 | 5,393 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 3 |
other | WA * 30 RE * 8 |
ソースコード
/* * assert code * * stdinが制約を満たすならば通常終了(WA),そうでないならばabort(RE)する. */ #include<bits/stdc++.h> using namespace std; int main(){ int n,m; int i,j,k; int a,b; cin >> n>>m; assert(2<=n && n<=100000); assert((n+1)/2<=m && m<=n*(n-1)/2 && m<=100000); vector<vector<int>> vertex(n); vector<pair<int,int>> edgeset(m); vector<unordered_map<int,bool>> checkmultiedge(n); for (i=0;i<m;i++){ scanf("%d%d",&a,&b); assert(0<=a && a<n); assert(0<=b && b<n); assert(a<b); edgeset[i].first=b; edgeset[i].second=a; vertex[a].emplace_back(i); vertex[b].emplace_back(i); // 多重辺は存在しない assert(!checkmultiedge[a][b]); checkmultiedge[a][b]=true; } for (i=0;i<n;i++){ // 孤立頂点は存在しない assert(0<vertex[i].size()); } cout << "problem ok" << endl; return 0; }