結果
| 問題 | No.3639 Itsukin |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-08-25 14:08:31 |
| 言語 | C++23 (gcc 15.2.0 + boost 1.90.0) |
| 結果 |
AC
|
| 実行時間 | 536 ms / 2,000 ms |
| + 717µs | |
| コード長 | 783 bytes |
| 記録 | |
| コンパイル時間 | 4,428 ms |
| コンパイル使用メモリ | 380,252 KB |
| 実行使用メモリ | 21,488 KB |
| 最終ジャッジ日時 | 2026-08-25 14:08:49 |
| 合計ジャッジ時間 | 15,443 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge3_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| サンプル | 0 % | AC * 1 |
| 小課題1 | 10 % | AC * 6 |
| 小課題2 | 15 % | AC * 5 |
| 小課題3 | 15 % | AC * 16 |
| 小課題4 | 20 % | AC * 10 |
| 小課題5 | 10 % | AC * 15 |
| 小課題6 | 30 % | AC * 35 |
| 合計 | 100 点 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
#if __has_include("all.hpp")
#include "all.hpp"
#else
#include <atcoder/all>
#endif
using namespace atcoder;
int main(void){
int n,m;
cin>>n>>m;
dsu d(n);
vector<array<int,4>>qu;
for(int i=0;i<m;i++){
int u,v,l;
cin>>u>>v>>l;
qu.push_back({l,-1,u-1,v-1});
}
int q;
cin>>q;
vector<int>ans(q);
for(int i=0;i<q;i++){
int p,t;
cin>>p>>t;
qu.push_back({p,t-1,i,0});
}
sort(qu.begin(),qu.end());
for(int i=0;i<qu.size();i++){
if(qu[i][1]==-1){
d.merge(qu[i][2],qu[i][3]);
}else{
ans[qu[i][2]]=d.size(qu[i][1]);
}
}
for(int i=0;i<q;i++){
cout<<ans[i]<<endl;
}
return 0;
}