1754E - Wish I Knew How to Sort - CodeForces Solution


dp probabilities probabilities *2000

Please click on ads to support us..

C++ Code:

#include "bits/stdc++.h"
#define int long long
using namespace std;
const int N=2e5+2,mod=998244353;
int T,n,s,k,b,a[N],inv[N],ans;
void solve(){
    scanf("%lld",&n);b=n*(n-1ll)/2%mod,s=k=ans=0;
    for (int i = 1; i <=n ; ++i) scanf("%lld",&a[i]),s+=a[i];
    for (int i = 1; i <=n-s ; ++i) k+=a[i];
    for (int i = k; i ; i--) ans=(ans+b*inv[i]%mod*inv[i])%mod;
    printf("%lld\n",ans);
}
signed main(){
    inv[1]=1;
    for(int i=2;i<N;++i) inv[i]=1ll*(mod-mod/i)*inv[mod%i]%mod;
    scanf("%lld",&T);
    while (T--){
        solve();
    }
    return 0;
}


Comments

Submit
0 Comments
More Questions

349A - Cinema Line
47A - Triangular numbers
1516B - AGAGA XOOORRR
1515A - Phoenix and Gold
1515B - Phoenix and Puzzle
155A - I_love_username
49A - Sleuth
1541A - Pretty Permutations
1632C - Strange Test
673A - Bear and Game
276A - Lunch Rush
1205A - Almost Equal
1020B - Badge
1353A - Most Unstable Array
770A - New Password
1646B - Quality vs Quantity
80A - Panoramix's Prediction
1354B - Ternary String
122B - Lucky Substring
266B - Queue at the School
1490A - Dense Array
1650B - DIV + MOD
1549B - Gregor and the Pawn Game
553A - Kyoya and Colored Balls
1364A - XXXXX
1499B - Binary Removals
1569C - Jury Meeting
108A - Palindromic Times
46A - Ball Game
114A - Cifera