首页 > 其他分享 >abc044C Tak and Cards

abc044C Tak and Cards

时间:2024-10-20 22:44:26浏览次数:6  
标签:卡片 int 51 abc044C i64 solve Cards dp Tak

有N张卡片,第i张卡片上的数字为x[i],可以从中选择1张或多张卡片,要求平均数为A,求方案数。
1<=N<=50; 1<=A<=50; 1<=x[i]<=50

分析:由于N最大为50,dfs搜索会超时,考虑dp。记dp[i][j][k]表示前i张卡片中选择了j张,并且和为k,根据每张卡片选与不选进行递推。

#include <bits/stdc++.h>
using i64 = long long;

i64 dp[51][51][2501];

void solve() {
	int N, A;
	std::cin >> N >> A;
	std::vector<int> X(N + 1);
	for (int i = 1; i <= N; i++) {
		std::cin >> X[i];
	}
	for (int i = 0; i <= N; i++) {
		dp[i][0][0] = 1;
	}

	for (int i = 1; i <= N; i++) {
		for (int j = 1; j <= i; j++) {
			for (int k = 1; k <= 2500; k++) {
				dp[i][j][k] = dp[i - 1][j][k];
				if (k >= X[i]) {
					dp[i][j][k] += dp[i - 1][j - 1][k - X[i]];
				}
			}
		}
	}

	i64 ans = 0;
	for (int i = 1; i <= N; i++) {
		ans += dp[N][i][i * A];
	}
	std::cout << ans << "\n";
}

int main() {
	std::cin.tie(0)->sync_with_stdio(0);
	int t = 1;
	while (t--) solve();
	return 0;
}

标签:卡片,int,51,abc044C,i64,solve,Cards,dp,Tak
From: https://www.cnblogs.com/chenfy27/p/18488092

相关文章

  • MLE 5217 : Take-Home Dataset Classification
    Dept.ofMaterialsScience&EngineeringNUSMLE5217:Take-HomeAssignmentsLecturerSasaniJayawardhanaObjectivesBasedonthechemicalcompositionofmaterialsbuildaclassificationmodeltodistinguishmetalsandnon-metalsModel1),andthenb......
  • sky_take_out苍穹外卖开发(day-1)
    软件开发整体介绍:      开发流程:             需求分析:                    需求规格说明书                    产品原型             设计:                   ......
  • 当 smartcardsimulator.dll 加载错误时的解决策略
    smartcardsimulator.dll文件通常与智能卡模拟器或智能卡相关的应用程序有关。智能卡模拟器是一种软件工具,用于模拟智能卡的行为,以便开发人员测试和调试智能卡应用。smartcardsimulator.dll文件负责处理智能卡模拟的相关功能。当您看到“smartcardsimulator.dll加载错误”......
  • 2024牛客多校第二场 - I. Red Playing Cards
    思路与官方题解一样,不过我采用了递归的写法,这样就可以避免排序等操作。另外还要注意递归的时候不能让多个不同的递归函数同时修改一个数组,否则这个数组同时被多个函数使用,会很混乱。我这里把它开成了二维来避免这个问题。代码如下:#include<cstdio>#include<algorithm>usingn......
  • 解决wsl 安装出现Installing, this may take a few minutes… 时间长。且重新打开进入
    1.现象在安装wsl出现Installing,thismaytakeafewminutes…等待时间过长,无法启动,或报错。且如果你重新打开终端,出现图二情况(直接进入root用户)。很显然,你的系统已经正确安装,但是你却跳过了创建用户的步骤,因此,只需要创建一个新用户,并将其设定为默认启动的用户就可以解决问......
  • ABC225F String Cards
    题意给你\(n\)个串\(s_i\),你需要选出\(k\)个串并按照某个顺序拼接起来形成的字符串字典序最小。\(n,k,|s|\le50\)。分析由于顺序不固定,所以我们无法直接DP。而状压的复杂度也太高了,怎么办呢?考虑钦定一个顺序,使得按照这个顺序排列字符串一定最优。一个经典的错误想法......
  • CF2019C Cards Partition
    涉及知识点:鸽巢原理,贪心前言唐诗题,赛时都已经想到了所有性质,以为要从数学方法上求解,却没想到就是个纯贪心题……题意Link给你一堆数,\(1,2,3,\dots,n\),分别有\(a[1],a[2],a[3],\dots,a[n]\)个,你还可以添加不超过\(k\)个数(当然这些数得是\(1\simn\)中的整数),你需要将它们......
  • Asynchronous AOF fsync is taking too long (disk is busy?). Writing the AOF
    一、问题描述 Redis日志:2110:M24Apr02:01:02.058*AsynchronousAOFfsyncistakingtoolong(diskisbusy?).WritingtheAOFbufferwithoutwaitingforfsynctocomplete,thismayslowdownRedis.2110:M24Apr02:01:12.862#Connectionwithslaveclientid......
  • F - Takahashi in Narrow Road
    F-TakahashiinNarrowRoadProblemStatementThereisaroadextendingeastandwest,and$N$personsareontheroad.Theroadextendsinfinitelylongtotheeastandwestfromapointcalledtheorigin.The$i$-thperson$(1\leqi\leqN)$isinitial......
  • Applied Econometrics Take-home
    Take-homeassignment#2AppliedEconometricsFall2024Duedate: September27 (Friday),by 10:00pm (U.S.EasternTime)Submissionoflatework: Pleaseseesyllabusfordetailsonlatesubmissionpolicy · Pleaseseesyllabusforthe policyonthes......