提出 #73725506
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
const int MOD = 998244353;
const int N = 200005;
int par[N];
int fnd(int x)
{
return par[x] == x ? x : par[x] = fnd(par[x]);
}
int main()
{
int n, m;
cin >> n >> m;
vector<int> u(m + 1), v(m + 1);
for (int i = 1; i <= m; ++i)
{
cin >> u[i] >> v[i];
}
vector<int> p2(m + 1);
p2[0] = 1;
for (int i = 1; i <= m; ++i)
{
p2[i] = p2[i - 1] * 2 % MOD;
}
for (int i = 1; i <= N; ++i)
par[i] = i;
int cnt = n;
int ans = 0;
for (int i = m; i >= 1; --i)
{
int a = fnd(u[i]), b = fnd(v[i]);
if (a != b)
{
if (cnt > 2)
{
par[a] = b;
--cnt;
}
else
{
ans = (ans + p2[i]) % MOD;
}
}
}
cout << ans << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Divide Graph |
| ユーザ | altman_xie |
| 言語 | C++23 (GCC 15.2.0) |
| 得点 | 475 |
| コード長 | 953 Byte |
| 結果 | AC |
| 実行時間 | 75 ms |
| メモリ | 6688 KiB |
コンパイルエラー
./Main.cpp: In function 'main':
./Main.cpp:28:16: warning: iteration 200004 invokes undefined behavior [-Waggressive-loop-optimizations]
28 | par[i] = i;
| ~~~~~~~^~~
./Main.cpp:27:23: note: within this loop
27 | for (int i = 1; i <= N; ++i)
| ~~^~~~
./Main.cpp: In function 'main':
./Main.cpp:28:16: warning: iteration 200004 invokes undefined behavior [-Waggressive-loop-optimizations]
28 | par[i] = i;
| ^
./Main.cpp:27:23: note: within this loop
27 | for (int i = 1; i <= N; ++i)
| ^
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 475 / 475 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 02_perfect_00.txt, 02_perfect_01.txt, 02_perfect_02.txt, 02_perfect_03.txt, 02_perfect_04.txt, 02_perfect_05.txt, 02_perfect_06.txt, 02_perfect_07.txt, 02_perfect_08.txt, 03_tree_00.txt, 03_tree_01.txt, 03_tree_02.txt, 03_tree_03.txt, 03_tree_04.txt, 03_tree_05.txt, 03_tree_06.txt, 04_handmade_00.txt, 04_handmade_01.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 2 ms | 4388 KiB |
| 00_sample_01.txt | AC | 2 ms | 4484 KiB |
| 00_sample_02.txt | AC | 1 ms | 4260 KiB |
| 01_random_00.txt | AC | 50 ms | 6220 KiB |
| 01_random_01.txt | AC | 45 ms | 5772 KiB |
| 01_random_02.txt | AC | 39 ms | 5584 KiB |
| 01_random_03.txt | AC | 5 ms | 4504 KiB |
| 01_random_04.txt | AC | 46 ms | 6236 KiB |
| 01_random_05.txt | AC | 41 ms | 5328 KiB |
| 01_random_06.txt | AC | 33 ms | 5196 KiB |
| 01_random_07.txt | AC | 32 ms | 5136 KiB |
| 01_random_08.txt | AC | 49 ms | 5852 KiB |
| 01_random_09.txt | AC | 35 ms | 5200 KiB |
| 01_random_10.txt | AC | 73 ms | 6372 KiB |
| 01_random_11.txt | AC | 72 ms | 6288 KiB |
| 01_random_12.txt | AC | 75 ms | 6436 KiB |
| 01_random_13.txt | AC | 48 ms | 5792 KiB |
| 01_random_14.txt | AC | 65 ms | 6028 KiB |
| 02_perfect_00.txt | AC | 52 ms | 6352 KiB |
| 02_perfect_01.txt | AC | 52 ms | 6472 KiB |
| 02_perfect_02.txt | AC | 52 ms | 6620 KiB |
| 02_perfect_03.txt | AC | 52 ms | 6472 KiB |
| 02_perfect_04.txt | AC | 51 ms | 6688 KiB |
| 02_perfect_05.txt | AC | 52 ms | 6480 KiB |
| 02_perfect_06.txt | AC | 51 ms | 6500 KiB |
| 02_perfect_07.txt | AC | 52 ms | 6416 KiB |
| 02_perfect_08.txt | AC | 52 ms | 6500 KiB |
| 03_tree_00.txt | AC | 74 ms | 6416 KiB |
| 03_tree_01.txt | AC | 75 ms | 6352 KiB |
| 03_tree_02.txt | AC | 72 ms | 6620 KiB |
| 03_tree_03.txt | AC | 75 ms | 6416 KiB |
| 03_tree_04.txt | AC | 75 ms | 6472 KiB |
| 03_tree_05.txt | AC | 75 ms | 6416 KiB |
| 03_tree_06.txt | AC | 75 ms | 6480 KiB |
| 04_handmade_00.txt | AC | 2 ms | 4348 KiB |
| 04_handmade_01.txt | AC | 73 ms | 6412 KiB |