Submission #36821253


Source Code Expand

#include<bits/stdc++.h>
#ifdef xay5421
#define D(...) fprintf(stderr,__VA_ARGS__)
#define DD(...) D(#__VA_ARGS__ "="),debug_helper::debug(__VA_ARGS__),D("\n")
#include"/home/xay5421/debug.hpp"
#else
#define D(...) ((void)0)
#define DD(...) ((void)0)
#endif
#define pb push_back
#define eb emplace_back
#define SZ(x) ((int)(x).size())
#define each(x,v) for(auto&x:v)
#define rep(i,a,b) for(int i=(a);i<=(b);++i)
#define per(i,a,b) for(int i=(a);i>=(b);--i)
template<class T>void rd(T&x){int f=0,c;while(!isdigit(c=getchar()))f^=!(c^45);x=(c&15);while(isdigit(c=getchar()))x=x*10+(c&15);if(f)x=-x;}
template<class T>void pt(T x,int c=-1){if(x<0)putchar('-'),x=-x;if(x>9)pt(x/10);putchar(x%10+48);if(c!=-1)putchar(c);}
using namespace std;
using LL=long long;
using ULL=unsigned long long;
const int P=200003;
int ad(int k1,int k2){return k1+k2>=P?k1+k2-P:k1+k2;}
int su(int k1,int k2){return k1-k2<0?k1-k2+P:k1-k2;}
int mu(int k1,int k2){return 1ULL*k1*k2%P;}
void uad(int&k1,int k2){(k1+=k2)>=P&&(k1-=P);}
void usu(int&k1,int k2){(k1-=k2)<0&&(k1+=P);}
template<class... T>int ad(int k1,T... k2){return ad(k1,ad(k2...));}
template<class... T>int su(int k1,T... k2){return su(k1,ad(k2...));}
template<class... T>int mu(int k1,T... k2){return mu(k1,mu(k2...));}
template<class... T>void uad(int&k1,T... k2){return uad(k1,ad(k2...));}
template<class... T>void usu(int&k1,T... k2){return usu(k1,ad(k2...));}
int po(int k1,int k2){
	int k3=1;
	for(;k2;k2>>=1,k1=mu(k1,k1))if(k2&1)k3=mu(k3,k1);
	return k3;
}
LL n,m;
int fac[P],ifac[P];
int C(LL n,LL m){
	if(m<0||n<m)return 0;
	if(n<P&&m<P){
		return mu(fac[n],ifac[m],ifac[n-m]);
	}else{
		return mu(C(n%P,m%P),C(n/P,m/P));
	}
}
int main(){
	fac[0]=1;
	rep(i,1,P-1)fac[i]=mu(fac[i-1],i);
	ifac[P-1]=po(fac[P-1],P-2);
	per(i,P-1,1)ifac[i-1]=mu(ifac[i],i);
	rd(n),rd(m);
	m-=n;
	auto Get=[&](LL k){ // 1/(1-x)^2k
		return C(n*2+k-1,k);
	};
	int ans=0;
	uad(ans,Get(m));
	for(int i=1;;++i){
		LL t=1LL*i*(i*3-1)/2;
		if(t<=m){
			uad(ans,mu(i&1?P-1:1,Get(m-t)));
		}else break;
	}
	for(int i=1;;++i){
		LL t=1LL*i*(i*3+1)/2;
		if(t<=m){
			uad(ans,mu(i&1?P-1:1,Get(m-t)));
		}else break;
	}
	printf("%d\n",ans);
	return 0;
}

Submission Info

Submission Time
Task Ex - Sum of Prod of Min
User xay5421
Language C++ (GCC 9.2.1)
Score 600
Code Size 2237 Byte
Status AC
Exec Time 78 ms
Memory 5296 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 3
AC × 75
Set Name Test Cases
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, 02_small_00.txt, 02_small_01.txt, 02_small_02.txt, 02_small_03.txt, 02_small_04.txt, 02_small_05.txt, 02_small_06.txt, 02_small_07.txt, 02_small_08.txt, 02_small_09.txt, 03_medium_00.txt, 03_medium_01.txt, 03_medium_02.txt, 03_medium_03.txt, 03_medium_04.txt, 03_medium_05.txt, 03_medium_06.txt, 03_medium_07.txt, 03_medium_08.txt, 03_medium_09.txt, 04_large_00.txt, 04_large_01.txt, 04_large_02.txt, 04_large_03.txt, 04_large_04.txt, 04_large_05.txt, 04_large_06.txt, 04_large_07.txt, 04_large_08.txt, 04_large_09.txt, 05_n_eq_m_00.txt, 05_n_eq_m_01.txt, 05_n_eq_m_02.txt, 05_n_eq_m_03.txt, 05_n_eq_m_04.txt, 05_n_eq_m_05.txt, 05_n_eq_m_06.txt, 05_n_eq_m_07.txt, 05_n_eq_m_08.txt, 05_n_eq_m_09.txt, 06_2n_eq_m_00.txt, 06_2n_eq_m_01.txt, 06_2n_eq_m_02.txt, 06_2n_eq_m_03.txt, 06_2n_eq_m_04.txt, 06_2n_eq_m_05.txt, 06_2n_eq_m_06.txt, 06_2n_eq_m_07.txt, 06_2n_eq_m_08.txt, 06_2n_eq_m_09.txt, 07_max_00.txt, 07_max_01.txt, 07_max_02.txt, 07_max_03.txt, 07_max_04.txt, 07_max_05.txt, 07_max_06.txt, 07_max_07.txt, 07_max_08.txt, 07_max_09.txt, 08_min_00.txt, 08_min_01.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 10 ms 5116 KiB
00_sample_01.txt AC 9 ms 5124 KiB
00_sample_02.txt AC 52 ms 5120 KiB
01_random_00.txt AC 31 ms 4984 KiB
01_random_01.txt AC 23 ms 5184 KiB
01_random_02.txt AC 48 ms 5072 KiB
01_random_03.txt AC 18 ms 5224 KiB
01_random_04.txt AC 44 ms 5068 KiB
01_random_05.txt AC 32 ms 5148 KiB
01_random_06.txt AC 49 ms 5148 KiB
01_random_07.txt AC 12 ms 5292 KiB
01_random_08.txt AC 26 ms 5120 KiB
01_random_09.txt AC 23 ms 5116 KiB
02_small_00.txt AC 6 ms 5088 KiB
02_small_01.txt AC 6 ms 5176 KiB
02_small_02.txt AC 10 ms 5184 KiB
02_small_03.txt AC 5 ms 5112 KiB
02_small_04.txt AC 6 ms 5184 KiB
02_small_05.txt AC 9 ms 5036 KiB
02_small_06.txt AC 5 ms 5084 KiB
02_small_07.txt AC 4 ms 5296 KiB
02_small_08.txt AC 5 ms 5068 KiB
02_small_09.txt AC 4 ms 5084 KiB
03_medium_00.txt AC 6 ms 5288 KiB
03_medium_01.txt AC 5 ms 5124 KiB
03_medium_02.txt AC 6 ms 5148 KiB
03_medium_03.txt AC 6 ms 5116 KiB
03_medium_04.txt AC 6 ms 5036 KiB
03_medium_05.txt AC 12 ms 5188 KiB
03_medium_06.txt AC 6 ms 5072 KiB
03_medium_07.txt AC 7 ms 5088 KiB
03_medium_08.txt AC 7 ms 5072 KiB
03_medium_09.txt AC 5 ms 5084 KiB
04_large_00.txt AC 50 ms 5084 KiB
04_large_01.txt AC 43 ms 5124 KiB
04_large_02.txt AC 33 ms 5148 KiB
04_large_03.txt AC 41 ms 5040 KiB
04_large_04.txt AC 28 ms 5224 KiB
04_large_05.txt AC 48 ms 5204 KiB
04_large_06.txt AC 52 ms 5292 KiB
04_large_07.txt AC 39 ms 5292 KiB
04_large_08.txt AC 17 ms 5224 KiB
04_large_09.txt AC 78 ms 4984 KiB
05_n_eq_m_00.txt AC 5 ms 5088 KiB
05_n_eq_m_01.txt AC 5 ms 5116 KiB
05_n_eq_m_02.txt AC 7 ms 5172 KiB
05_n_eq_m_03.txt AC 5 ms 5088 KiB
05_n_eq_m_04.txt AC 5 ms 5084 KiB
05_n_eq_m_05.txt AC 6 ms 5180 KiB
05_n_eq_m_06.txt AC 10 ms 5072 KiB
05_n_eq_m_07.txt AC 8 ms 5172 KiB
05_n_eq_m_08.txt AC 6 ms 5224 KiB
05_n_eq_m_09.txt AC 6 ms 5036 KiB
06_2n_eq_m_00.txt AC 57 ms 5088 KiB
06_2n_eq_m_01.txt AC 51 ms 5176 KiB
06_2n_eq_m_02.txt AC 43 ms 5136 KiB
06_2n_eq_m_03.txt AC 26 ms 5124 KiB
06_2n_eq_m_04.txt AC 36 ms 5184 KiB
06_2n_eq_m_05.txt AC 17 ms 5288 KiB
06_2n_eq_m_06.txt AC 40 ms 5088 KiB
06_2n_eq_m_07.txt AC 34 ms 5276 KiB
06_2n_eq_m_08.txt AC 50 ms 5088 KiB
06_2n_eq_m_09.txt AC 34 ms 5224 KiB
07_max_00.txt AC 62 ms 5272 KiB
07_max_01.txt AC 63 ms 5040 KiB
07_max_02.txt AC 61 ms 5220 KiB
07_max_03.txt AC 53 ms 5084 KiB
07_max_04.txt AC 69 ms 5224 KiB
07_max_05.txt AC 53 ms 5124 KiB
07_max_06.txt AC 49 ms 5292 KiB
07_max_07.txt AC 39 ms 4988 KiB
07_max_08.txt AC 62 ms 5088 KiB
07_max_09.txt AC 68 ms 5272 KiB
08_min_00.txt AC 8 ms 5124 KiB
08_min_01.txt AC 5 ms 5124 KiB