QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#697819 | #9530. A Game On Tree | jimmyywang# | WA | 2ms | 11204kb | C++14 | 1.4kb | 2024-11-01 15:53:44 | 2024-11-01 15:53:45 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define f(i,a,b) for(ll i=a;i<=b;i++)
ll rd(){
ll x=0,f=1;char c=getchar();
while(!isdigit(c)){if(c=='-')f=-1;c=getchar();}
while(isdigit(c)){x=x*10+c-'0';c=getchar();}
return x*f;
}
#define d rd()
const ll mod=998244353;
ll T,n;
#define pb push_back
vector<ll>e[200010];
ll sz[200010],ssz[200010];
ll res;
void dfs(ll u,ll fa){
sz[u]=1;
for(int i=0;i<e[u].size();i++){
ll v=e[u][i];if(v==fa)continue;
dfs(v,u);sz[u]+=sz[v];
}ssz[u]=sz[u]*sz[u]%mod;ll t=0;
for(int i=0;i<e[u].size();i++){
ll v=e[u][i];if(v==fa)continue;
res=(res+(sz[v]*(n-sz[v])%mod)*((sz[v]*(n-sz[v])%mod)))%mod;
res=(res+2*((n-sz[v])*(n-sz[v])%mod*(ssz[v]-sz[v]*sz[v]%mod+mod)%mod))%mod;
res=(res+2*(sz[v]*t%mod)*sz[v])%mod;
ssz[u]=(ssz[u]+ssz[v])%mod;t=(t+ssz[v])%mod;
}
}
ll qp(ll a,ll b){a%=mod;
ll res=1;while(b){
if(b&1)res=res*a%mod;
a=a*a%mod;b>>=1;
}return res;
}
int main(){
T=d;while(T--){
n=d;f(i,1,n)e[i].clear(),sz[i]=ssz[i]=0;res=0;
f(i,1,n-1){
ll u=d,v=d;
e[u].pb(v),e[v].pb(u);
}dfs(1,0);ll iv=qp(n*(n-1)/2,mod-2);
iv=(iv*iv)%mod;
// f(i,1,n)cout<<sz[i]<<" "<<ssz[i]<<endl;
cout<<res*iv%mod<<endl;
}
return 0;
}
/*
1
5
1 2
1 5
3 2
4 2
*/
詳細信息
Test #1:
score: 100
Accepted
time: 2ms
memory: 10792kb
input:
2 3 1 2 2 3 5 1 2 1 5 3 2 4 2
output:
443664158 918384806
result:
ok 2 lines
Test #2:
score: -100
Wrong Answer
time: 0ms
memory: 11204kb
input:
1000 7 3 6 4 3 5 3 2 6 1 4 7 1 12 5 7 10 7 2 10 11 2 1 7 8 1 4 2 9 11 6 9 12 11 3 5 6 2 5 1 2 4 5 6 4 3 6 5 2 5 1 5 4 5 3 2 8 1 8 2 8 4 2 6 1 5 6 7 6 3 8 8 3 8 7 3 4 8 6 4 2 7 5 2 1 4 4 3 1 4 3 2 1 6 5 1 6 1 2 5 3 5 4 2 12 8 11 5 11 12 8 3 12 6 12 2 3 4 6 10 11 1 5 9 5 7 5 9 6 1 7 6 4 7 8 7 5 4 9 6 ...
output:
948445317 839203589 550143557 918384806 395987239 487662742 776412276 869581749 788558042 392827641 315802614 887328316 417447641 654037969 311550833 899652320 859599306 271631118 908525604 945867336 433351719 56023919 576147205 183319566 698771049 2969985 831623816 599710576 310564911 578242286 232...
result:
wrong answer 2nd lines differ - expected: '468414020', found: '839203589'