Submission #36721825


Source Code Expand

#include<bits/stdc++.h>
#define LL long long
#define MOD 1000000007
using namespace std;
int mul(const int &a, const int &b)
{
	return 1LL * a * b % MOD;
}
void Mul(int &a, const int &b)
{
	a = 1LL * a * b % MOD;
}
void Sqr(int &a)
{
	a = 1LL * a * a % MOD;
}
int qwqmi(int x, int k = MOD - 2)
{
	int res = 1;
	while(k)
	{
		if(k & 1) Mul(res, x);
		Sqr(x), k >>= 1;
	}
	return res;
}
const int N = 4e6 + 2005;
int fac[N], facinv[N];
void preprocess()
{
	fac[0] = facinv[0] = 1;
	for(int i = 1; i < N; ++i)
		fac[i] = mul(fac[i - 1], i);
	facinv[N - 1] = qwqmi(fac[N - 1]);
	for(int i = N - 2; i >= 1; --i)
		facinv[i] = mul(facinv[i + 1], i + 1);
}
int n, m, x, s;
int main()
{
	preprocess();
	scanf("%d %d", &n, &m);
	for(int i = 1; i <= n; ++i)
	{
		scanf("%d", &x);
		s += x;
	}
	if(s > m) puts("0");
	else if(s == m) puts("1");
	else
	{
		int res = facinv[s + n];
		for(int i = m - s + 1; i <= m + n; ++i)
			Mul(res, i % MOD);
		printf("%d\n", res);
	}
	return 0;
}

Submission Info

Submission Time
Task D - Binomial Coefficient is Fun
User Schucking_Sattin
Language C++ (GCC 9.2.1)
Score 600
Code Size 1028 Byte
Status AC
Exec Time 78 ms
Memory 35072 KiB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:42:7: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   42 |  scanf("%d %d", &n, &m);
      |  ~~~~~^~~~~~~~~~~~~~~~~
./Main.cpp:45:8: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   45 |   scanf("%d", &x);
      |   ~~~~~^~~~~~~~~~

Judge Result

Set Name All Sample
Score / Max Score 600 / 600 0 / 0
Status
AC × 72
AC × 2
Set Name Test Cases
All sample_01.txt, sample_02.txt, testcase_1.txt, testcase_10.txt, testcase_11.txt, testcase_12.txt, testcase_13.txt, testcase_14.txt, testcase_15.txt, testcase_16.txt, testcase_17.txt, testcase_18.txt, testcase_19.txt, testcase_2.txt, testcase_20.txt, testcase_21.txt, testcase_22.txt, testcase_23.txt, testcase_24.txt, testcase_25.txt, testcase_26.txt, testcase_27.txt, testcase_28.txt, testcase_29.txt, testcase_3.txt, testcase_30.txt, testcase_31.txt, testcase_32.txt, testcase_33.txt, testcase_34.txt, testcase_35.txt, testcase_36.txt, testcase_37.txt, testcase_38.txt, testcase_39.txt, testcase_4.txt, testcase_40.txt, testcase_41.txt, testcase_42.txt, testcase_43.txt, testcase_44.txt, testcase_45.txt, testcase_46.txt, testcase_47.txt, testcase_48.txt, testcase_49.txt, testcase_5.txt, testcase_50.txt, testcase_51.txt, testcase_52.txt, testcase_53.txt, testcase_54.txt, testcase_55.txt, testcase_56.txt, testcase_57.txt, testcase_58.txt, testcase_59.txt, testcase_6.txt, testcase_60.txt, testcase_61.txt, testcase_62.txt, testcase_63.txt, testcase_64.txt, testcase_65.txt, testcase_66.txt, testcase_67.txt, testcase_68.txt, testcase_69.txt, testcase_7.txt, testcase_70.txt, testcase_8.txt, testcase_9.txt
Sample sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
sample_01.txt AC 64 ms 35004 KiB
sample_02.txt AC 58 ms 34840 KiB
testcase_1.txt AC 60 ms 34964 KiB
testcase_10.txt AC 58 ms 34900 KiB
testcase_11.txt AC 60 ms 34900 KiB
testcase_12.txt AC 76 ms 35064 KiB
testcase_13.txt AC 67 ms 34816 KiB
testcase_14.txt AC 71 ms 34828 KiB
testcase_15.txt AC 67 ms 35004 KiB
testcase_16.txt AC 66 ms 35004 KiB
testcase_17.txt AC 68 ms 34872 KiB
testcase_18.txt AC 67 ms 34836 KiB
testcase_19.txt AC 67 ms 34872 KiB
testcase_2.txt AC 60 ms 34892 KiB
testcase_20.txt AC 67 ms 34916 KiB
testcase_21.txt AC 69 ms 34956 KiB
testcase_22.txt AC 67 ms 34956 KiB
testcase_23.txt AC 68 ms 35004 KiB
testcase_24.txt AC 70 ms 35072 KiB
testcase_25.txt AC 67 ms 35000 KiB
testcase_26.txt AC 71 ms 34984 KiB
testcase_27.txt AC 71 ms 34824 KiB
testcase_28.txt AC 69 ms 34956 KiB
testcase_29.txt AC 68 ms 34872 KiB
testcase_3.txt AC 60 ms 34776 KiB
testcase_30.txt AC 69 ms 34836 KiB
testcase_31.txt AC 68 ms 35056 KiB
testcase_32.txt AC 72 ms 34952 KiB
testcase_33.txt AC 70 ms 34968 KiB
testcase_34.txt AC 69 ms 35004 KiB
testcase_35.txt AC 70 ms 35072 KiB
testcase_36.txt AC 67 ms 35068 KiB
testcase_37.txt AC 69 ms 34956 KiB
testcase_38.txt AC 71 ms 34920 KiB
testcase_39.txt AC 72 ms 35004 KiB
testcase_4.txt AC 63 ms 34756 KiB
testcase_40.txt AC 70 ms 35068 KiB
testcase_41.txt AC 69 ms 34916 KiB
testcase_42.txt AC 69 ms 34952 KiB
testcase_43.txt AC 70 ms 34964 KiB
testcase_44.txt AC 68 ms 34972 KiB
testcase_45.txt AC 68 ms 34952 KiB
testcase_46.txt AC 70 ms 35036 KiB
testcase_47.txt AC 68 ms 34956 KiB
testcase_48.txt AC 71 ms 35060 KiB
testcase_49.txt AC 70 ms 34820 KiB
testcase_5.txt AC 62 ms 34876 KiB
testcase_50.txt AC 69 ms 34872 KiB
testcase_51.txt AC 71 ms 34840 KiB
testcase_52.txt AC 70 ms 34916 KiB
testcase_53.txt AC 69 ms 35000 KiB
testcase_54.txt AC 63 ms 34964 KiB
testcase_55.txt AC 59 ms 34960 KiB
testcase_56.txt AC 59 ms 34956 KiB
testcase_57.txt AC 60 ms 34956 KiB
testcase_58.txt AC 61 ms 34876 KiB
testcase_59.txt AC 58 ms 35000 KiB
testcase_6.txt AC 61 ms 34920 KiB
testcase_60.txt AC 61 ms 34956 KiB
testcase_61.txt AC 61 ms 34744 KiB
testcase_62.txt AC 64 ms 34764 KiB
testcase_63.txt AC 62 ms 35004 KiB
testcase_64.txt AC 61 ms 34904 KiB
testcase_65.txt AC 60 ms 34892 KiB
testcase_66.txt AC 60 ms 34892 KiB
testcase_67.txt AC 62 ms 34896 KiB
testcase_68.txt AC 59 ms 34752 KiB
testcase_69.txt AC 62 ms 34772 KiB
testcase_7.txt AC 60 ms 34916 KiB
testcase_70.txt AC 59 ms 34856 KiB
testcase_8.txt AC 67 ms 34868 KiB
testcase_9.txt AC 78 ms 35072 KiB