codeforces #302Div1 A
对于 我这样的弱者就需要一道一道 简单的题 来慢慢补了。
看懂 题意很重要:
又一次被自己的英语吓哭了,做了两天发现题目看错,结果样例都对了,
硬是过不了;
给 n,m,b,mod;
在给n 个数 a[i],每个代码猴子,写1行代码会产生的bugs
有 v[1]+v[2]+v[3]+.....+v[n] N 只代码猴子写的行数要等于m
求有多少中方案,结果% MOD;
(总之,我的描述 估计只有自己看懂了
解析:三维,DP[I][J][K] 代表:做到第i人,产生k个bug 并且写了 j行,
转移一下就好了
dp[i][j][k]=dp[i-1][j][k];
dp[i][j][k]+=dp[i-1][j-1][k-a[i]];k>=a[i];
dp[i][j][k]%=mod;
然后:三维500500500存不下,滚动数组
//
include
include
include
include <string.h>
include
include
include
include
include
define N 123456
define inf 0x3f3f3f
using namespace std;
typedef long long ll;
int n,m,b,mod;
int a[555];
ll dp[2][505][505];
int main()
{
cin>>n>>m>>b>>mod;
for (int i=1;i<=n;i++) scanf("%d",&a[i]);
dp[0][0][0]=1;
int it=0;
for (int i=1;i<=n;i++)
{
it^=1;
for (int j=0;j<=m;j++)
for (int k=0;k<=b;k++){
dp[it][j][k]=dp[it^1][j][k];
if (j>0&&k>=a[i]) dp[it][j][k]=(dp[it][j][k]+dp[it][j-1][k-a[i]])%mod;
}
}
ll ans=0;
for (int i=0;i<=b;i++) ans=(ans+dp[it][m][i])%mod;
cout<<ans;
return 0;
}
codeforces #302Div1 A的更多相关文章
- python爬虫学习(5) —— 扒一下codeforces题面
上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...
- 【Codeforces 738D】Sea Battle(贪心)
http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...
- 【Codeforces 738C】Road to Cinema
http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...
- 【Codeforces 738A】Interview with Oleg
http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...
- CodeForces - 662A Gambling Nim
http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...
- CodeForces - 274B Zero Tree
http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...
- CodeForces - 261B Maxim and Restaurant
http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...
- CodeForces - 696B Puzzles
http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...
- CodeForces - 148D Bag of mice
http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...
随机推荐
- Git搭建自己的网站服务器(Linux)
git服务器弄了半天终于搞定了,还是记录下吧,不然下次有得忘了 流程: 服务器 构建git目录 git用户,git组作为仓库管理 ssh授权(远程无需密码接入) hook(post-receive)自 ...
- leetcode_1039. Minimum Score Triangulation of Polygon_动态规划
https://leetcode.com/problems/minimum-score-triangulation-of-polygon/ 题意:给定一个凸的N边形(N<=50),每个顶点有一个 ...
- Android(java)学习笔记176: 远程服务的应用场景(移动支付案例)
一. 移动支付: 用户需要在移动终端提交账号.密码以及金额等数据 到 远端服务器.然后远端服务器匹配这些信息,进行逻辑判断,进而完成交易,返回交易成功或失败的信息给移动终端.用户提交账号. ...
- pagehelper 分页
分页jar包: <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pa ...
- python 人脸识别试水(一)
1.安装python,在这里我的版本是python 3.6 2.安装pycharm,我的版本是pycharm 2017 3.安装pip pip 版本10 4.安装 numpy :pip ins ...
- function语句注意事项
function语句 在Javascript中定义一个函数,有两种写法: function foo() { } 和 var foo = function () { } 两种写法完全等价.但是在解析的时 ...
- css--css选择器,伪类
前戏 前面我们说过CSS规则由选择器和声明组成,我们要给标签设置属性,那我们就要找到对应的标签,CSS选择器可以帮我们找到我们需要的标签 css选择器有: 标签选择器 类选择器 ID选择器 全局选择器 ...
- windows10用WMware安装Linux虚拟机详细步骤
windows10用WMware安装Linux虚拟机详细步骤 一.安装环境 windows10操作系统物理机VMware Workstation 软件(可以在网上下载)CentOS6.9镜像文件( ...
- java值的传递
public class Example { String str = new String("good"); char[] ch = {'a','b','c'}; public ...
- [题解] cogs 1669 神秘的咒语
http://cogs.pro:8080/cogs/problem/problem.php?pid=1669 "The Real Incantation is Their Common In ...