結果

問題 No.1170 Never Want to Walk
コンテスト
ユーザー 👑 希丝缇娜菲贝尔
提出日時 2026-08-06 01:19:39
言語 cLay
(20250308-1 + boost 1.90.0)
コンパイル:
clayc _filename_
実行:
./a.out
結果
WA  
実行時間 -
コード長 624 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 5,259 ms
コンパイル使用メモリ 195,404 KB
実行使用メモリ 19,680 KB
最終ジャッジ日時 2026-08-06 01:19:47
合計ジャッジ時間 7,465 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1 WA * 1
other AC * 8 WA * 29
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

//no-unlocked
{
    int N, A, B;
    rd(N, A, B);
    int X[200010];
    rd(X(N));
    
    unionFind uf('m', N, 1);
    
    set<int> unvisited;
    rep(i, N) unvisited.insert(i);
    
    rep(i, N) {
        int l = lower_bound(X, X + N, X[i] + A) - X;
        int r = upper_bound(X, X + N, X[i] + B) - X - 1;
        
        if (l > r) continue;
        
        auto it = unvisited.lower_bound(l);
        while (it != unvisited.end() && *it <= r) {
            int j = *it;
            uf.connect(i, j);
            it = unvisited.erase(it);
        }
    }
    
    rep(i, N) {
        wt(uf.size(uf.get(i)));
    }
}
0