Submission #1247741
Source Code Expand
#include<stdio.h>
int mbk(long long a,int n,int m){return n?(mbk((a*a)%m,n/2,m)*(n%2?a:1))%m:1;}
int inv(int a,int m){return mbk((long long)a,m-2,m);}
int aCb(int a,int b,int m){
long long s=1,i;
if(a<b)return 0;
if(b>a-b)b=a-b;
for(i=0;i<b;i++)s=(((s*(a-i))%m)*inv(i+1,m))%m; //printf("%dC%d=%d->",a,b,s);
return (int)s;
}
int x,y,a,b;
long long f(int i,int j){return aCb((x-i)*(y-j),a+b,1e9+7);}
int main(){
int h,w,c;
long long d=1,M=1e9+7;
scanf("%d %d %d %d %d %d",&w,&h,&x,&y,&a,&b);
c=(h-y+1LL)*(w-x+1LL)%M;
if(x*y-a-b){
d=f(0,0);
d=(d+4*f(1,1)+M*4)%M;//printf("%lld\n",d);
d=(d-2*f(1,0)+M*2)%M;//printf("%lld\n",d);
d=(d-2*f(0,1)+M*2)%M;//printf("%lld\n",d);
d=(d+f(2,0))%M;//printf("%lld\n",d);
d=(d+f(0,2))%M;//printf("%lld\n",d);
d=(d-2*f(2,1)+M*2)%M;//printf("%lld\n",d);
d=(d-2*f(1,2)+M*2)%M;//printf("%lld\n",d);
d=(d+f(2,2))%M;//printf("%lld\n",d);
}//printf("%lld\n",d);
d=d*aCb(a+b,a,M)%M;//printf("%lld %d\n",d,c);
printf("%lld\n",c*d%M);
return 0;
}
Submission Info
Submission Time
2017-04-28 17:31:04+0900
Task
D - AtCoder社の冬
User
yuiop
Language
C (GCC 5.4.1)
Score
101
Code Size
1039 Byte
Status
AC
Exec Time
3 ms
Memory
128 KB
Compile Error
./Main.c: In function ‘main’:
./Main.c:16:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d %d %d %d %d %d",&w,&h,&x,&y,&a,&b);
^
Judge Result
Set Name
sub
All
Score / Max Score
100 / 100
1 / 1
Status
Set Name
Test Cases
sub
00_sample_01E.txt, 00_sample_02E.txt, 00_sample_03E.txt, test_03E.txt, test_04E.txt, test_07E.txt, test_08E.txt, test_11E.txt, test_12E.txt, test_15E.txt, test_16E.txt, test_19E.txt, test_20E.txt, test_23E.txt, test_24E.txt, test_27E.txt, test_28E.txt, test_31E.txt, test_32E.txt, test_36E.txt, test_37E.txt, test_38E.txt, test_39E.txt, test_45E.txt, test_47E.txt
All
00_sample_01E.txt, 00_sample_02E.txt, 00_sample_03E.txt, 00_sample_04.txt, test_01.txt, test_02.txt, test_03E.txt, test_04E.txt, test_05.txt, test_06.txt, test_07E.txt, test_08E.txt, test_09.txt, test_10.txt, test_11E.txt, test_12E.txt, test_13.txt, test_14.txt, test_15E.txt, test_16E.txt, test_17.txt, test_18.txt, test_19E.txt, test_20E.txt, test_21.txt, test_22.txt, test_23E.txt, test_24E.txt, test_25.txt, test_26.txt, test_27E.txt, test_28E.txt, test_29.txt, test_30.txt, test_31E.txt, test_32E.txt, test_33.txt, test_34.txt, test_35.txt, test_36E.txt, test_37E.txt, test_38E.txt, test_39E.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45E.txt, test_46.txt, test_47E.txt, test_48.txt
Case Name
Status
Exec Time
Memory
00_sample_01E.txt
AC
1 ms
128 KB
00_sample_02E.txt
AC
1 ms
128 KB
00_sample_03E.txt
AC
1 ms
128 KB
00_sample_04.txt
AC
2 ms
128 KB
test_01.txt
AC
1 ms
128 KB
test_02.txt
AC
1 ms
128 KB
test_03E.txt
AC
1 ms
128 KB
test_04E.txt
AC
1 ms
128 KB
test_05.txt
AC
1 ms
128 KB
test_06.txt
AC
2 ms
128 KB
test_07E.txt
AC
1 ms
128 KB
test_08E.txt
AC
1 ms
128 KB
test_09.txt
AC
1 ms
128 KB
test_10.txt
AC
1 ms
128 KB
test_11E.txt
AC
1 ms
128 KB
test_12E.txt
AC
1 ms
128 KB
test_13.txt
AC
1 ms
128 KB
test_14.txt
AC
1 ms
128 KB
test_15E.txt
AC
1 ms
128 KB
test_16E.txt
AC
1 ms
128 KB
test_17.txt
AC
1 ms
128 KB
test_18.txt
AC
1 ms
128 KB
test_19E.txt
AC
1 ms
128 KB
test_20E.txt
AC
1 ms
128 KB
test_21.txt
AC
1 ms
128 KB
test_22.txt
AC
2 ms
128 KB
test_23E.txt
AC
1 ms
128 KB
test_24E.txt
AC
1 ms
128 KB
test_25.txt
AC
1 ms
128 KB
test_26.txt
AC
1 ms
128 KB
test_27E.txt
AC
1 ms
128 KB
test_28E.txt
AC
1 ms
128 KB
test_29.txt
AC
2 ms
128 KB
test_30.txt
AC
3 ms
128 KB
test_31E.txt
AC
1 ms
128 KB
test_32E.txt
AC
1 ms
128 KB
test_33.txt
AC
1 ms
128 KB
test_34.txt
AC
1 ms
128 KB
test_35.txt
AC
1 ms
128 KB
test_36E.txt
AC
1 ms
128 KB
test_37E.txt
AC
1 ms
128 KB
test_38E.txt
AC
1 ms
128 KB
test_39E.txt
AC
1 ms
128 KB
test_40.txt
AC
1 ms
128 KB
test_41.txt
AC
1 ms
128 KB
test_42.txt
AC
1 ms
128 KB
test_43.txt
AC
1 ms
128 KB
test_44.txt
AC
1 ms
128 KB
test_45E.txt
AC
1 ms
128 KB
test_46.txt
AC
1 ms
128 KB
test_47E.txt
AC
1 ms
128 KB
test_48.txt
AC
1 ms
128 KB