6461: Tak and Cards

时间限制: 1 Sec  内存限制: 128 MB
提交: 142  解决: 51
[提交][状态][讨论版][命题人:admin]

题目描述

Tak has N cards. On the i-th (1≤i≤N) card is written an integer xi. He is selecting one or more cards from these N cards, so that the average of the integers written on the selected cards is exactly A. In how many ways can he make his selection?

Constraints
1≤N≤50
1≤A≤50
1≤xi≤50
N,A,xi are integers.
Partial Score
200 points will be awarded for passing the test set satisfying 1≤N≤16.

输入

The input is given from Standard Input in the following format:
N A
x1 x2 … xN

输出

Print the number of ways to select cards such that the average of the written integers is exactly A.

样例输入

4 8
7 9 8 9

样例输出

5

提示

The following are the 5 ways to select cards such that the average is 8:
Select the 3-rd card.
Select the 1-st and 2-nd cards.
Select the 1-st and 4-th cards.
Select the 1-st, 2-nd and 3-rd cards.
Select the 1-st, 3-rd and 4-th cards.

题意:求一串数字中不连续子串使其总和是a的倍数

动态规划求解,因为数据范围小,所以从小到大枚举计算,最后找出倍数

i代表相加的数的个数,j代表相加得到该数的方案数

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll MOD=1e9+7;
const int INF=55;
ll dp[INF][INF*INF]; //防止爆int
int main()
{int n,a;cin>>n>>a;int x;dp[0][0]=1;for(int i=1; i<=n; i++){cin>>x;for(int j=i-1; j>=0; j--){for(int k=0; k<=INF*j; k++){   dp[j+1][k+x]+=dp[j][k];}}}ll ans=0;for(int i=1; i<=n; i++){ans+=dp[i][i*a];}cout<<ans<<endl;return 0;
}

Tak and Cards dp相关推荐

  1. Tak and Cards(DP,二维背包)

    问题 K: Tak and Cards 时间限制: 1 Sec   内存限制: 128 MB 提交: 107   解决: 34 [ 提交][ 状态][ 讨论版][命题人: admin] 题目描述 Ta ...

  2. Tak and Cards(dp)

    题目描述 Tak has N cards. On the i-th (1≤i≤N) card is written an integer xi. He is selecting one or more ...

  3. Tak and Cards(dp 背包)

    Tak and Cards 时间限制: 1 Sec  内存限制: 128 MB 题目描述 Tak has N cards. On the i-th (1≤i≤N) card is written an ...

  4. 6461:Tak and Cards(数位DP)

    6461: Tak and Cards 时间限制: 1 Sec   内存限制: 128 MB 提交: 173   解决: 63 [ 提交][ 状态][ 讨论版][命题人: admin] 题目描述 Ta ...

  5. ARC060 C - Tak and Cards(dp,背包)

    题意: 解法: 令d[i][j][k]表示前i个物品,选j个,总和为k的方案数, 背包dp出来,最后答案为sum(d[n][i][i*A]).第一维可以滚动优化掉. code: #include &l ...

  6. ARC-060C - Tak and Cards - 动态规划

    题目描述 Tak has N cards. On the i-th (1≤i≤N) card is written an integer xi. He is selecting one or more ...

  7. 高橋君とカード / Tak and Cards(AtCoder-2037)

    Problem Description Tak has N cards. On the i-th (1≤i≤N) card is written an integer xi. He is select ...

  8. [动态规划]Tak and Cards

    题目描述 Tak has N cards. On the i-th (1≤i≤N) card is written an integer xi. He is selecting one or more ...

  9. Codeforces Round #727 (Div. 2) E. Game with Cards dp + 思维

    传送门 文章目录 题意: 思路: 题意: 初始有左右手,上面各有一个数字为000的卡牌,每次都有一个新卡kik_iki​,你可以将其放在左手或者右手,使两只手上的卡片范围在[ll,i,rl,i][l_ ...

最新文章

  1. empress和queen区别_queen与empress
  2. Android -- View移动的六种方法
  3. centos7下安装gcc7
  4. 面向对象的多态性(1)
  5. 程序员获取编程灵感的 10 种方式
  6. zookeeper分布式锁避免羊群效应(Herd Effect)
  7. python处理csv文件案例_让繁琐的工作自动化——python处理CSV文件
  8. mysql左键关联_MySQL的:左键删除重复列加入,3个表
  9. java技术学习内容_Java开发主要都学些什么内容?
  10. 用启动易合并启动光盘图解教程
  11. python服务端语言_使用Python实现简单的服务器功能
  12. [转载] python3 闭包
  13. 有关vi(vim)的常用命令
  14. Mysql数据库系统单元压力和性能基准测试
  15. elasticsearch入门(二)
  16. ExtJS中的renderTo何applyTo的差别
  17. latex:表格排版示例
  18. #if 与 if 的区别
  19. 小白白红队初成长(4)文件的面纱
  20. VisionPro软件介绍

热门文章

  1. master数据库是什么
  2. prctl函数的应用
  3. 有哪些高质量程序员聚集地论坛分享?
  4. IS-IS协议原理和配置 与OSPF
  5. Chapter13 带有多元协变量的函数型因变量回归模型
  6. C语言 将一串数字,一个一个输出
  7. python读取多张图片文字为表格_python批量给图片加图文水印+读取excel
  8. 利用C 语言根据两点坐标框选图片,计算机应用基础试题(2)
  9. nats-server消息系统介绍说明
  10. 从公式到代码理解opencv和基于opencv实现的fastest pattern mathing的关系