提出 #73686851
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define rep(t,l,r) for(int t=l;t<=r;t++)
#define per(t,l,r) for(int t=r;t>=l;t--)
const int N=200005,MOD=998244353;
int n,m,U[N],V[N],f[N],pw[N],dep[N],fa[N][20],fe[N],h[N],tot,mst[N];
struct E {int to,id,nxt;} e[N*2];
vector<int> g[N];
void add(int u,int v,int id) {e[++tot]={v,id,h[u]};h[u]=tot;}
int find(int x) {return f[x]==x?x:f[x]=find(f[x]);}
void dfs1(int u,int p,int d,int id) {
dep[u]=d;fa[u][0]=p;fe[u]=id;
rep(i,1,19) fa[u][i]=fa[fa[u][i-1]][i-1];
for(int i=h[u];i;i=e[i].nxt) if(e[i].to!=p) dfs1(e[i].to,u,d+1,e[i].id);
}
int lca(int u,int v) {
if(dep[u]<dep[v]) swap(u,v);
per(i,0,19) if(dep[fa[u][i]]>=dep[v]) u=fa[u][i];
if(u==v) return u;
per(i,0,19) if(fa[u][i]!=fa[v][i]) {u=fa[u][i];v=fa[v][i];}
return fa[u][0];
}
signed main() {
ios::sync_with_stdio(0);cin.tie(0);
cin>>n>>m;pw[0]=1;rep(i,1,m) pw[i]=pw[i-1]*2%MOD;
rep(i,1,n) f[i]=i;
rep(i,1,m) cin>>U[i]>>V[i];
per(i,1,m) {
int x=find(U[i]),y=find(V[i]);
if(x!=y) {f[x]=y;mst[i]=1;add(U[i],V[i],i);add(V[i],U[i],i);}
}
dfs1(1,0,1,0);
rep(i,1,m) {
if(mst[i]) continue;
int u=U[i],v=V[i],p=lca(u,v);
while(u!=p) {g[u].push_back(i);u=fa[u][0];}
while(v!=p) {g[v].push_back(i);v=fa[v][0];}
}
int mn=m+1,be=-1;
rep(i,2,n) {
int mx=fe[i];
for(int x:g[i]) if(x>mx) mx=x;
if(mx<mn) {mn=mx;be=i;}
}
int ans=pw[fe[be]];
for(int x:g[be]) ans=(ans+pw[x])%MOD;
cout<<ans<<"\n";
return 0;
}
提出情報
| 提出日時 |
|
| 問題 |
E - Divide Graph |
| ユーザ |
Fourier_WJY |
| 言語 |
C++ IOI-Style(GNU++20) (GCC 14.2.0) |
| 得点 |
475 |
| コード長 |
1635 Byte |
| 結果 |
AC |
| 実行時間 |
541 ms |
| メモリ |
355348 KiB |
ジャッジ結果
| セット名 |
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 |
1 ms |
1708 KiB |
| 00_sample_01.txt |
AC |
1 ms |
1708 KiB |
| 00_sample_02.txt |
AC |
1 ms |
1580 KiB |
| 01_random_00.txt |
AC |
48 ms |
18976 KiB |
| 01_random_01.txt |
AC |
49 ms |
21428 KiB |
| 01_random_02.txt |
AC |
105 ms |
54852 KiB |
| 01_random_03.txt |
AC |
9 ms |
6444 KiB |
| 01_random_04.txt |
AC |
101 ms |
55100 KiB |
| 01_random_05.txt |
AC |
107 ms |
54280 KiB |
| 01_random_06.txt |
AC |
104 ms |
53156 KiB |
| 01_random_07.txt |
AC |
116 ms |
56700 KiB |
| 01_random_08.txt |
AC |
230 ms |
101012 KiB |
| 01_random_09.txt |
AC |
134 ms |
63772 KiB |
| 01_random_10.txt |
AC |
164 ms |
85548 KiB |
| 01_random_11.txt |
AC |
175 ms |
90156 KiB |
| 01_random_12.txt |
AC |
187 ms |
90028 KiB |
| 01_random_13.txt |
AC |
140 ms |
66348 KiB |
| 01_random_14.txt |
AC |
86 ms |
59436 KiB |
| 02_perfect_00.txt |
AC |
38 ms |
13228 KiB |
| 02_perfect_01.txt |
AC |
37 ms |
11948 KiB |
| 02_perfect_02.txt |
AC |
40 ms |
13212 KiB |
| 02_perfect_03.txt |
AC |
541 ms |
350372 KiB |
| 02_perfect_04.txt |
AC |
487 ms |
355348 KiB |
| 02_perfect_05.txt |
AC |
517 ms |
351928 KiB |
| 02_perfect_06.txt |
AC |
91 ms |
47904 KiB |
| 02_perfect_07.txt |
AC |
88 ms |
44216 KiB |
| 02_perfect_08.txt |
AC |
99 ms |
49884 KiB |
| 03_tree_00.txt |
AC |
71 ms |
65324 KiB |
| 03_tree_01.txt |
AC |
66 ms |
56492 KiB |
| 03_tree_02.txt |
AC |
50 ms |
54700 KiB |
| 03_tree_03.txt |
AC |
55 ms |
54700 KiB |
| 03_tree_04.txt |
AC |
61 ms |
54700 KiB |
| 03_tree_05.txt |
AC |
65 ms |
54700 KiB |
| 03_tree_06.txt |
AC |
67 ms |
54700 KiB |
| 04_handmade_00.txt |
AC |
1 ms |
1580 KiB |
| 04_handmade_01.txt |
AC |
64 ms |
78124 KiB |