Submission #71480


Source Code Expand

#include<cstdio>
#include<cstdlib>

#define rep(i,n) for(int i=0;i<(n);i++)

using namespace std;

typedef long long ll;

ll xgcd(ll a,ll b,ll &x,ll &y){
	if(b==0){ x=1; y=0; return a; }
	ll g=xgcd(b,a%b,y,x); y-=a/b*x;
	return g;
}

ll modinv(ll a,ll m){
	ll x,y;
	if(xgcd(a,m,x,y)==1) return (x+m)%m;
	return -1;
}

ll M;

ll fact[200001],factinv[200001];

ll nCr(int n,int r){ return fact[n]*factinv[r]%M*factinv[n-r]%M; }

ll f(int d1,int d2,int T){
	int d=d1+d2;
	if(d%2!=T%2 || d>T) return 0;

	int a=(T-d)/2;
	return nCr(T,a)*nCr(T,d1+a)%M;
}

int main(){
	int n,T; scanf("%d%d%lld",&n,&T,&M);

	fact[0]=1;
	rep(i,200000) fact[i+1]=(i+1)*fact[i]%M;
	rep(i,200001) factinv[i]=modinv(fact[i],M);

	ll ans=1;
	rep(_,n){
		int x,y; scanf("%d%d",&x,&y);
		ans=ans*f(abs(x),abs(y),T)%M;
	}
	printf("%lld\n",ans);

	return 0;
}

Submission Info

Submission Time
Task D - Don't worry. Be Together
User fura2
Language C++ (G++ 4.6.4)
Score 40
Code Size 879 Byte
Status WA
Exec Time 191 ms
Memory 3888 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:37:37: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:45:31: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

Judge Result

Set Name part1 part2 part3
Score / Max Score 40 / 40 0 / 30 0 / 30
Status
AC × 31
AC × 24
WA × 7
AC × 79
WA × 12
Set Name Test Cases
part1 part1/part1_00_sample_00.txt, part1/part1_00_sample_01.txt, part1/part1_maxrand_00.txt, part1/part1_maxrand_01.txt, part1/part1_maxrand_02.txt, part1/part1_maxrand_03.txt, part1/part1_maxrand_04.txt, part1/part1_maxrand_05.txt, part1/part1_maxrand_06.txt, part1/part1_maxrand_07.txt, part1/part1_maxrand_08.txt, part1/part1_maxrand_09.txt, part1/part1_maxrand_10.txt, part1/part1_maxrand_11.txt, part1/part1_maxrand_12.txt, part1/part1_maxrand_13.txt, part1/part1_maxrand_14.txt, part1/part1_rand1_00.txt, part1/part1_rand1_01.txt, part1/part1_rand1_02.txt, part1/part1_rand1_03.txt, part1/part1_rand2_00.txt, part1/part1_rand2_01.txt, part1/part1_rand2_02.txt, part1/part1_rand2_03.txt, part1/part1_rand2_04.txt, part1/part1_rand2_05.txt, part1/part1_rand2_06.txt, part1/part1_rand2_07.txt, part1/part1_rand2_08.txt, part1/part1_rand2_09.txt
part2 part2/part2_00_sample_02.txt, part2/part2_00_sample_03.txt, part2/part2_maxrand_00.txt, part2/part2_maxrand_01.txt, part2/part2_maxrand_02.txt, part2/part2_maxrand_03.txt, part2/part2_maxrand_04.txt, part2/part2_maxrand_05.txt, part2/part2_maxrand_06.txt, part2/part2_maxrand_07.txt, part2/part2_maxrand_08.txt, part2/part2_maxrand_09.txt, part2/part2_maxrand_10.txt, part2/part2_maxrand_11.txt, part2/part2_maxrand_12.txt, part2/part2_maxrand_13.txt, part2/part2_maxrand_14.txt, part2/part2_rand1_00.txt, part2/part2_rand1_01.txt, part2/part2_rand1_02.txt, part2/part2_rand1_03.txt, part2/part2_rand2_00.txt, part2/part2_rand2_01.txt, part2/part2_rand2_02.txt, part2/part2_rand2_03.txt, part2/part2_rand2_04.txt, part2/part2_rand2_05.txt, part2/part2_rand2_06.txt, part2/part2_rand2_07.txt, part2/part2_rand2_08.txt, part2/part2_rand2_09.txt
part3 part1/part1_00_sample_00.txt, part1/part1_00_sample_01.txt, part1/part1_maxrand_00.txt, part1/part1_maxrand_01.txt, part1/part1_maxrand_02.txt, part1/part1_maxrand_03.txt, part1/part1_maxrand_04.txt, part1/part1_maxrand_05.txt, part1/part1_maxrand_06.txt, part1/part1_maxrand_07.txt, part1/part1_maxrand_08.txt, part1/part1_maxrand_09.txt, part1/part1_maxrand_10.txt, part1/part1_maxrand_11.txt, part1/part1_maxrand_12.txt, part1/part1_maxrand_13.txt, part1/part1_maxrand_14.txt, part1/part1_rand1_00.txt, part1/part1_rand1_01.txt, part1/part1_rand1_02.txt, part1/part1_rand1_03.txt, part1/part1_rand2_00.txt, part1/part1_rand2_01.txt, part1/part1_rand2_02.txt, part1/part1_rand2_03.txt, part1/part1_rand2_04.txt, part1/part1_rand2_05.txt, part1/part1_rand2_06.txt, part1/part1_rand2_07.txt, part1/part1_rand2_08.txt, part1/part1_rand2_09.txt, part2/part2_00_sample_02.txt, part2/part2_00_sample_03.txt, part2/part2_maxrand_00.txt, part2/part2_maxrand_01.txt, part2/part2_maxrand_02.txt, part2/part2_maxrand_03.txt, part2/part2_maxrand_04.txt, part2/part2_maxrand_05.txt, part2/part2_maxrand_06.txt, part2/part2_maxrand_07.txt, part2/part2_maxrand_08.txt, part2/part2_maxrand_09.txt, part2/part2_maxrand_10.txt, part2/part2_maxrand_11.txt, part2/part2_maxrand_12.txt, part2/part2_maxrand_13.txt, part2/part2_maxrand_14.txt, part2/part2_rand1_00.txt, part2/part2_rand1_01.txt, part2/part2_rand1_02.txt, part2/part2_rand1_03.txt, part2/part2_rand2_00.txt, part2/part2_rand2_01.txt, part2/part2_rand2_02.txt, part2/part2_rand2_03.txt, part2/part2_rand2_04.txt, part2/part2_rand2_05.txt, part2/part2_rand2_06.txt, part2/part2_rand2_07.txt, part2/part2_rand2_08.txt, part2/part2_rand2_09.txt, part3/part3_maxrand_00.txt, part3/part3_maxrand_01.txt, part3/part3_maxrand_02.txt, part3/part3_maxrand_03.txt, part3/part3_maxrand_04.txt, part3/part3_maxrand_05.txt, part3/part3_maxrand_06.txt, part3/part3_maxrand_07.txt, part3/part3_maxrand_08.txt, part3/part3_maxrand_09.txt, part3/part3_maxrand_10.txt, part3/part3_maxrand_11.txt, part3/part3_maxrand_12.txt, part3/part3_maxrand_13.txt, part3/part3_maxrand_14.txt, part3/part3_rand1_00.txt, part3/part3_rand1_01.txt, part3/part3_rand1_02.txt, part3/part3_rand1_03.txt, part3/part3_rand2_00.txt, part3/part3_rand2_01.txt, part3/part3_rand2_02.txt, part3/part3_rand2_03.txt, part3/part3_rand2_04.txt, part3/part3_rand2_05.txt, part3/part3_rand2_06.txt, part3/part3_rand2_07.txt, part3/part3_rand2_08.txt, part3/part3_rand2_09.txt
Case Name Status Exec Time Memory
part1/part1_00_sample_00.txt AC 126 ms 3756 KB
part1/part1_00_sample_01.txt AC 127 ms 3760 KB
part1/part1_maxrand_00.txt AC 182 ms 3764 KB
part1/part1_maxrand_01.txt AC 182 ms 3760 KB
part1/part1_maxrand_02.txt AC 186 ms 3776 KB
part1/part1_maxrand_03.txt AC 182 ms 3764 KB
part1/part1_maxrand_04.txt AC 189 ms 3768 KB
part1/part1_maxrand_05.txt AC 183 ms 3884 KB
part1/part1_maxrand_06.txt AC 186 ms 3764 KB
part1/part1_maxrand_07.txt AC 182 ms 3684 KB
part1/part1_maxrand_08.txt AC 183 ms 3760 KB
part1/part1_maxrand_09.txt AC 187 ms 3760 KB
part1/part1_maxrand_10.txt AC 186 ms 3760 KB
part1/part1_maxrand_11.txt AC 183 ms 3724 KB
part1/part1_maxrand_12.txt AC 182 ms 3728 KB
part1/part1_maxrand_13.txt AC 187 ms 3764 KB
part1/part1_maxrand_14.txt AC 183 ms 3756 KB
part1/part1_rand1_00.txt AC 155 ms 3888 KB
part1/part1_rand1_01.txt AC 136 ms 3768 KB
part1/part1_rand1_02.txt AC 163 ms 3768 KB
part1/part1_rand1_03.txt AC 170 ms 3764 KB
part1/part1_rand2_00.txt AC 166 ms 3752 KB
part1/part1_rand2_01.txt AC 135 ms 3772 KB
part1/part1_rand2_02.txt AC 176 ms 3772 KB
part1/part1_rand2_03.txt AC 191 ms 3764 KB
part1/part1_rand2_04.txt AC 146 ms 3760 KB
part1/part1_rand2_05.txt AC 149 ms 3764 KB
part1/part1_rand2_06.txt AC 155 ms 3752 KB
part1/part1_rand2_07.txt AC 130 ms 3764 KB
part1/part1_rand2_08.txt AC 134 ms 3772 KB
part1/part1_rand2_09.txt AC 136 ms 3764 KB
part2/part2_00_sample_02.txt AC 32 ms 3724 KB
part2/part2_00_sample_03.txt WA 31 ms 3760 KB
part2/part2_maxrand_00.txt AC 172 ms 3748 KB
part2/part2_maxrand_01.txt AC 77 ms 3772 KB
part2/part2_maxrand_02.txt AC 170 ms 3760 KB
part2/part2_maxrand_03.txt WA 151 ms 3696 KB
part2/part2_maxrand_04.txt WA 105 ms 3732 KB
part2/part2_maxrand_05.txt AC 74 ms 3764 KB
part2/part2_maxrand_06.txt AC 75 ms 3764 KB
part2/part2_maxrand_07.txt WA 130 ms 3764 KB
part2/part2_maxrand_08.txt AC 73 ms 3760 KB
part2/part2_maxrand_09.txt AC 77 ms 3764 KB
part2/part2_maxrand_10.txt AC 170 ms 3768 KB
part2/part2_maxrand_11.txt AC 76 ms 3760 KB
part2/part2_maxrand_12.txt AC 74 ms 3768 KB
part2/part2_maxrand_13.txt AC 74 ms 3760 KB
part2/part2_maxrand_14.txt AC 77 ms 3772 KB
part2/part2_rand1_00.txt AC 154 ms 3756 KB
part2/part2_rand1_01.txt AC 61 ms 3768 KB
part2/part2_rand1_02.txt AC 56 ms 3764 KB
part2/part2_rand1_03.txt AC 70 ms 3764 KB
part2/part2_rand2_00.txt AC 161 ms 3756 KB
part2/part2_rand2_01.txt AC 66 ms 3772 KB
part2/part2_rand2_02.txt AC 59 ms 3760 KB
part2/part2_rand2_03.txt AC 75 ms 3772 KB
part2/part2_rand2_04.txt AC 61 ms 3772 KB
part2/part2_rand2_05.txt WA 70 ms 3764 KB
part2/part2_rand2_06.txt AC 161 ms 3764 KB
part2/part2_rand2_07.txt WA 161 ms 3768 KB
part2/part2_rand2_08.txt AC 73 ms 3688 KB
part2/part2_rand2_09.txt WA 88 ms 3768 KB
part3/part3_maxrand_00.txt AC 182 ms 3764 KB
part3/part3_maxrand_01.txt AC 90 ms 3768 KB
part3/part3_maxrand_02.txt AC 180 ms 3760 KB
part3/part3_maxrand_03.txt WA 174 ms 3768 KB
part3/part3_maxrand_04.txt WA 126 ms 3780 KB
part3/part3_maxrand_05.txt AC 98 ms 3768 KB
part3/part3_maxrand_06.txt AC 87 ms 3724 KB
part3/part3_maxrand_07.txt WA 145 ms 3692 KB
part3/part3_maxrand_08.txt AC 85 ms 3764 KB
part3/part3_maxrand_09.txt AC 88 ms 3764 KB
part3/part3_maxrand_10.txt AC 184 ms 3760 KB
part3/part3_maxrand_11.txt AC 98 ms 3768 KB
part3/part3_maxrand_12.txt AC 91 ms 3768 KB
part3/part3_maxrand_13.txt AC 89 ms 3856 KB
part3/part3_maxrand_14.txt AC 88 ms 3772 KB
part3/part3_rand1_00.txt AC 159 ms 3772 KB
part3/part3_rand1_01.txt AC 95 ms 3768 KB
part3/part3_rand1_02.txt AC 61 ms 3768 KB
part3/part3_rand1_03.txt AC 75 ms 3764 KB
part3/part3_rand2_00.txt AC 167 ms 3768 KB
part3/part3_rand2_01.txt AC 74 ms 3756 KB
part3/part3_rand2_02.txt AC 64 ms 3764 KB
part3/part3_rand2_03.txt AC 77 ms 3772 KB
part3/part3_rand2_04.txt AC 70 ms 3692 KB
part3/part3_rand2_05.txt AC 81 ms 3772 KB
part3/part3_rand2_06.txt AC 165 ms 3760 KB
part3/part3_rand2_07.txt WA 168 ms 3768 KB
part3/part3_rand2_08.txt AC 83 ms 3764 KB
part3/part3_rand2_09.txt WA 95 ms 3756 KB