Submission #3788104


Source Code Expand

#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<set>
#include<map>
using namespace std;
#define rep(i,l,r) for(register int i=(l);i<=(r);++i)
#define repdo(i,l,r) for(register int i=(l);i>=(r);--i)
#define il inline
typedef double db;
typedef long long ll;

//---------------------------------------
const ll nmod=998244353,nsz=5e5+50;
int n,m;
//ll dp[2][nsz*2],cur=1;
ll fac[nsz*2],ifac[nsz*2],ninv[nsz*2];

ll qpow(ll a,ll b){
	ll res=1;
	while(b){
		if(b&1)res=res*a%nmod;
		b>>=1,a=a*a%nmod;
	}
	return res;
}
ll inv(ll a){return qpow(a,nmod-2);}
ll c(ll a,ll b){
	if(a<0||b<0||a<b)return 0;
	return fac[a]*ifac[b]%nmod*ifac[a-b]%nmod;
}

int main(){
	cin>>n>>m;
	if(n<m)swap(n,m);
	fac[0]=1;
	rep(i,1,n+m){
		fac[i]=fac[i-1]*i%nmod;
	}
	ifac[n+m]=inv(fac[n+m]);
	repdo(i,n+m-1,1){
		ifac[i]=ifac[i+1]*(i+1)%nmod;
		ninv[i]=fac[i-1]*ifac[i]%nmod;
	}
	ifac[0]=1;
	ll ans=0;	
	rep(i,1,m){
		ans=(ans+c(i*2,i)*c(n+m-i*2,n-i))%nmod;
	}
	ans=(ans*qpow(c(m+n,n)*2%nmod,nmod-2))%nmod;
	ans=(ans+n)%nmod;
	cout<<ans<<'\n';
    return 0;
}












Submission Info

Submission Time
Task F - Yes or No
User luogu_bot2
Language C++ (GCC 5.4.1)
Score 2000
Code Size 1099 Byte
Status AC
Exec Time 24 ms
Memory 23680 KB

Judge Result

Set Name Sample Partial All
Score / Max Score 0 / 0 1500 / 1500 500 / 500
Status
AC × 5
AC × 28
AC × 75
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_05.txt
Partial sample_01.txt, sample_02.txt, sample_04.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_05.txt, sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_05.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_2_01.txt, subtask_2_02.txt, subtask_2_03.txt, subtask_2_04.txt, subtask_2_05.txt, subtask_2_06.txt, subtask_2_07.txt, subtask_2_08.txt, subtask_2_09.txt, subtask_2_10.txt, subtask_2_11.txt, subtask_2_12.txt, subtask_2_13.txt, subtask_2_14.txt, subtask_2_15.txt, subtask_2_16.txt, subtask_2_17.txt, subtask_2_18.txt, subtask_2_19.txt, subtask_2_20.txt, subtask_2_21.txt, subtask_2_22.txt, subtask_2_23.txt, subtask_2_24.txt, subtask_2_25.txt, subtask_2_26.txt, subtask_2_27.txt, subtask_2_28.txt, subtask_2_29.txt, subtask_2_30.txt, subtask_2_31.txt, subtask_2_32.txt, subtask_2_33.txt, subtask_2_34.txt, subtask_2_35.txt, subtask_2_36.txt, subtask_2_37.txt, subtask_2_38.txt, subtask_2_39.txt, subtask_2_40.txt
Case Name Status Exec Time Memory
sample_01.txt AC 2 ms 4352 KB
sample_02.txt AC 2 ms 4352 KB
sample_03.txt AC 2 ms 4352 KB
sample_04.txt AC 2 ms 4352 KB
sample_05.txt AC 2 ms 4352 KB
subtask_1_01.txt AC 2 ms 4352 KB
subtask_1_02.txt AC 2 ms 4352 KB
subtask_1_03.txt AC 2 ms 4352 KB
subtask_1_04.txt AC 2 ms 4352 KB
subtask_1_05.txt AC 2 ms 4352 KB
subtask_1_06.txt AC 2 ms 4352 KB
subtask_1_07.txt AC 2 ms 4352 KB
subtask_1_08.txt AC 2 ms 4352 KB
subtask_1_09.txt AC 2 ms 4352 KB
subtask_1_10.txt AC 2 ms 4352 KB
subtask_1_11.txt AC 2 ms 4352 KB
subtask_1_12.txt AC 2 ms 4352 KB
subtask_1_13.txt AC 3 ms 4480 KB
subtask_1_14.txt AC 4 ms 6912 KB
subtask_1_15.txt AC 7 ms 9984 KB
subtask_1_16.txt AC 7 ms 9984 KB
subtask_1_17.txt AC 7 ms 9984 KB
subtask_1_18.txt AC 7 ms 9984 KB
subtask_1_19.txt AC 7 ms 9984 KB
subtask_1_20.txt AC 7 ms 9984 KB
subtask_1_21.txt AC 7 ms 9984 KB
subtask_1_22.txt AC 7 ms 9984 KB
subtask_1_23.txt AC 7 ms 9984 KB
subtask_1_24.txt AC 7 ms 9856 KB
subtask_1_25.txt AC 6 ms 9856 KB
subtask_2_01.txt AC 2 ms 4352 KB
subtask_2_02.txt AC 2 ms 4352 KB
subtask_2_03.txt AC 2 ms 4352 KB
subtask_2_04.txt AC 24 ms 23680 KB
subtask_2_05.txt AC 24 ms 23680 KB
subtask_2_06.txt AC 24 ms 23680 KB
subtask_2_07.txt AC 24 ms 23680 KB
subtask_2_08.txt AC 24 ms 23680 KB
subtask_2_09.txt AC 24 ms 23680 KB
subtask_2_10.txt AC 24 ms 23680 KB
subtask_2_11.txt AC 24 ms 23680 KB
subtask_2_12.txt AC 24 ms 23680 KB
subtask_2_13.txt AC 24 ms 23680 KB
subtask_2_14.txt AC 24 ms 23680 KB
subtask_2_15.txt AC 24 ms 23680 KB
subtask_2_16.txt AC 24 ms 23680 KB
subtask_2_17.txt AC 23 ms 23552 KB
subtask_2_18.txt AC 22 ms 23040 KB
subtask_2_19.txt AC 20 ms 22784 KB
subtask_2_20.txt AC 11 ms 16640 KB
subtask_2_21.txt AC 11 ms 16640 KB
subtask_2_22.txt AC 11 ms 16640 KB
subtask_2_23.txt AC 11 ms 16640 KB
subtask_2_24.txt AC 11 ms 16640 KB
subtask_2_25.txt AC 11 ms 16640 KB
subtask_2_26.txt AC 11 ms 16640 KB
subtask_2_27.txt AC 11 ms 16640 KB
subtask_2_28.txt AC 11 ms 16640 KB
subtask_2_29.txt AC 11 ms 16640 KB
subtask_2_30.txt AC 14 ms 20736 KB
subtask_2_31.txt AC 17 ms 22784 KB
subtask_2_32.txt AC 24 ms 23680 KB
subtask_2_33.txt AC 24 ms 23680 KB
subtask_2_34.txt AC 24 ms 23680 KB
subtask_2_35.txt AC 24 ms 23552 KB
subtask_2_36.txt AC 23 ms 23552 KB
subtask_2_37.txt AC 13 ms 16640 KB
subtask_2_38.txt AC 10 ms 16640 KB
subtask_2_39.txt AC 23 ms 23424 KB
subtask_2_40.txt AC 14 ms 20736 KB