結果

問題 No.3105 Parallel Connection and Spanning Trees
ユーザー noya2
提出日時 2025-04-08 01:59:38
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 1,000 bytes
コンパイル時間 7,697 ms
コンパイル使用メモリ 279,744 KB
実行使用メモリ 20,676 KB
最終ジャッジ日時 2025-04-08 01:59:51
合計ジャッジ時間 11,581 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample WA * 2
other WA * 32
権限があれば一括ダウンロードができます

ソースコード

diff #

#include"testlib.h"

#include <set>
#include <utility>
#include <atcoder/dsu>

using ll = long long;
const ll Nmin = 2;
const ll Nmax = 60;
const ll Kmin = 2;
const ll Kmax = 210;

int main(){
    registerValidation();
    ll K = inf.readLong(Kmin, Kmax);
    inf.readEoln();
    for (ll i = 1; i <= K; i++){
        std::set<std::pair<ll, ll>> es;
        ll N = inf.readLong(Nmin, Nmax);
        inf.readSpace();
        ll M = inf.readLong(1LL, N*(N-1)/2);
        inf.readEoln();
        atcoder::dsu d(N);
        for (ll ii = 1; ii <= M; ii++){
            ll ui = inf.readLong(1LL, N);
            inf.readSpace();
            ll vi = inf.readLong(1LL, N);
            inf.readEoln();
            inf.ensuref(ui < vi, "ui < vi");
            inf.ensuref(!es.contains({ui, vi}), "edges are distinct");
            es.insert({ui, vi});
            ui--, vi--;
            d.merge(ui, vi);
        }
        inf.ensuref((ll)(d.groups().size()) == 1, "graph connected");
    }
    inf.readEof();
}
0