Submission #36665684


Source Code Expand

#include<bits/stdc++.h>
#define MOD 998244353
#define LL long long
using namespace std;
const int N = 5e3 + 5;
int mul(const int &a, const int &b)
{
	return 1LL * a * b % MOD;
}
void Inc(int &a, const int &b)
{
	((a += b) >= MOD) && (a -= MOD);
}
int n, k, a[N];
int f[2][N];
int main()
{
	scanf("%d %d", &n, &k);
	for(int i = 1; i <= n; ++i)
		scanf("%d", &a[i]);
	sort(a + 1, a + n + 1);
	int now, lst;
	f[now = 0][0] = 1;
	int x = a[1], w = 1;
	for(int i = 2; i <= n; ++i)
	{
		now ^= 1, lst =  now ^ 1;
		if(a[i] != x) w = 0, x = a[i]; 
		for(int j = 0; j <= i - w; ++j)
		{
			f[now][j] = mul(j + w + 1, f[lst][j]);
			if(j) Inc(f[now][j], mul(i - j - w, f[lst][j - 1]));
		}
		++w;
	}
	printf("%d\n", f[now][k]);
	return 0;
}

Submission Info

Submission Time
Task G - Increasing K Times
User Schucking_Sattin
Language C++ (GCC 9.2.1)
Score 600
Code Size 768 Byte
Status AC
Exec Time 46 ms
Memory 3844 KiB

Compile Error

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

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 2
AC × 37
Set Name Test Cases
Sample example_00.txt, example_01.txt
All example_00.txt, example_01.txt, test_00.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt
Case Name Status Exec Time Memory
example_00.txt AC 7 ms 3708 KiB
example_01.txt AC 2 ms 3708 KiB
test_00.txt AC 46 ms 3620 KiB
test_01.txt AC 46 ms 3664 KiB
test_02.txt AC 46 ms 3676 KiB
test_03.txt AC 2 ms 3792 KiB
test_04.txt AC 2 ms 3684 KiB
test_05.txt AC 19 ms 3648 KiB
test_06.txt AC 16 ms 3828 KiB
test_07.txt AC 31 ms 3764 KiB
test_08.txt AC 29 ms 3744 KiB
test_09.txt AC 6 ms 3764 KiB
test_10.txt AC 4 ms 3828 KiB
test_11.txt AC 2 ms 3832 KiB
test_12.txt AC 30 ms 3736 KiB
test_13.txt AC 2 ms 3684 KiB
test_14.txt AC 18 ms 3652 KiB
test_15.txt AC 2 ms 3692 KiB
test_16.txt AC 43 ms 3732 KiB
test_17.txt AC 27 ms 3760 KiB
test_18.txt AC 13 ms 3844 KiB
test_19.txt AC 21 ms 3656 KiB
test_20.txt AC 11 ms 3716 KiB
test_21.txt AC 2 ms 3628 KiB
test_22.txt AC 32 ms 3732 KiB
test_23.txt AC 26 ms 3736 KiB
test_24.txt AC 3 ms 3832 KiB
test_25.txt AC 43 ms 3764 KiB
test_26.txt AC 40 ms 3744 KiB
test_27.txt AC 38 ms 3676 KiB
test_28.txt AC 40 ms 3800 KiB
test_29.txt AC 40 ms 3764 KiB
test_30.txt AC 41 ms 3672 KiB
test_31.txt AC 39 ms 3740 KiB
test_32.txt AC 38 ms 3740 KiB
test_33.txt AC 38 ms 3660 KiB
test_34.txt AC 37 ms 3740 KiB