結果
問題 | No.2642 Don't cut line! |
ユーザー |
|
提出日時 | 2024-02-19 00:22:02 |
言語 | C++17(gcc12) (gcc 12.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,164 bytes |
コンパイル時間 | 10,873 ms |
コンパイル使用メモリ | 338,888 KB |
実行使用メモリ | 26,156 KB |
最終ジャッジ日時 | 2024-09-29 00:59:53 |
合計ジャッジ時間 | 15,839 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 3 |
other | WA * 33 |
ソースコード
#include<bits/stdc++.h> #include<atcoder/all> #include "testlib.h" using namespace std; using namespace atcoder; const int Nmin = 1, Nmax = 100'000; const int Kmin = 1, Kmax = 100'000; const long long Cmin = 1, Cmax = 10'000'000'000; const int Wmin = 0, Wmax = 100'000; const int Pmin = 1, Pmax = 100'000; int main(){ // validation を始める際に必ず行う registerValidation(); int N = inf.readInt(Nmin, Nmax); inf.readSpace(); int K = inf.readInt(Kmin, Kmax); inf.readSpace(); inf.readLong(Cmin, Cmax); inf.readEoln(); set<pair<int,int>> Edges; dsu uf(N); for(int i = 0; i < K; i++) { int U = inf.readInt(1, N); inf.readSpace(); int V = inf.readInt(1, N); inf.readSpace(); int W = inf.readInt(Wmin, Wmax); inf.readSpace(); int P = inf.readInt(Pmin, Pmax); inf.readEoln(); assert(U != V); if(U > V) swap(U, V); assert(Edges.find(pair<int,int>(U, V)) == Edges.end()); Edges.insert(pair<int,int>(U, V)); uf.merge(U - 1, V - 1); } assert(uf.groups().size() == 1); inf.readEof(); return 0; }