Hrbust 1837 Dream【dp】
Dream | ||||||
|
||||||
Description | ||||||
Dream是一个很好玩的学姐。虽然外表看起来有点伪学长,但是实际上还是个很爱玩很可爱的女生。有一次她的小学妹问了她一个问题:“学姐,这里有一些数,17,5,-21,16。如果往里面放入加号或减号后,结果能不能被7整除吖~?” 在可爱的小学妹面前,Dream的小宇宙瞬间爆发~Dream:“行~等一下,我帮你算一算。” 聪明的Dream很快就算出来,17 + 5 + -21 - 15 = -14。这样就可以被7整除了! “那这些数呢,能不能被k整除吖?” 小学妹递给Dream一本写满数字的本子。 Dream瞬间头大,你能帮助喜欢小学妹的Dream解决这个问题吗~? |
||||||
Input | ||||||
本子上有很多组数。 每组数的第一行有两个数:n和k。(1 <= n <= 10000, 2 <= k <= 100)表示有n个数,问能否被k整除。 第二行有n个数,每个数的绝对值都不大于10000. |
||||||
Output | ||||||
如果能够被n个数的最终计算结果整除就输出”DreamV5”,否则输出”Orz..” | ||||||
Sample Input | ||||||
4 7 17 5 -21 15 |
||||||
Sample Output | ||||||
DreamV5 | ||||||
Source | ||||||
2013 Summer Holiday Summarize |
题目大意:
给你N个数,和一个mod值K.
让你给这N个数前边加上+或者是-.求最终的和是否能被k整除。
思路:
1、观察到K并不是很大,那么设定dp【i】【j】表示dp到第i个数,%k的值为j的方案是否存在。
2、那么有状态转移方程:
注意和可能为负数,负数取模变成正数的方法就是先对和取模,然后+mod,再%mod.
Ac代码:
#include<stdio.h>
#include<iostream>
#include<string.h>
using namespace std;
int a[10500];
int dp[10500][550];
int main()
{int n,mod;while(~scanf("%d%d",&n,&mod)){for(int i=1;i<=n;i++){scanf("%d",&a[i]);}memset(dp,0,sizeof(dp));dp[0][0]=1;for(int i=1;i<=n;i++){for(int j=0;j<mod;j++){if(dp[i-1][j]>0){dp[i][((j+a[i])%mod+mod)%mod]=max(dp[i][((j+a[i])%mod+mod)%mod],dp[i-1][j]);dp[i][((j-a[i])%mod+mod)%mod]=max(dp[i][((j-a[i])%mod+mod)%mod],dp[i-1][j]);}}}if(dp[n][0]>0)printf("DreamV5\n");else printf("Orz..\n");}
}
Hrbust 1837 Dream【dp】相关推荐
- poj 2411 Mondriaan#39;s Dream 【dp】
题目:poj 2411 Mondriaan's Dream 题意:给出一个n*m的矩阵,让你用1*2的矩阵铺满,然后问你最多由多少种不同的方案. 分析:这是一个比較经典的题目.网上各种牛B写法一大堆. ...
- Hrbust 1162 魔女 【dp】
魔女 Time Limit: 1000 MS Memory Limit: 65536 K Total Submit: 153(59 users) Total Accepted: 44(30 users ...
- HRBUST 1162 魔女【DP】
Description 平行世界是动漫作品中经常涉及的题材,而且往往这些作品都相当的精彩,如<寒蝉鸣泣之时>.<CLANNAD>.<魔法少女小圆>.<命运石之 ...
- 【DP】【期望】$P1850$换教室
[DP][期望]\(P1850\)换教室 链接 题目描述 有 \(2n\) 节课程安排在$ n$ 个时间段上.在第 \(i\)(\(1 \leq i \leq n\))个时间段上,两节内容相同的课程同 ...
- Bailian2760 数字三角形【DP】
2760:数字三角形 描述 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (图1) 图1给出了一个数字三角形.从三角形的顶部到底部有很多条不同的路径.对于每条路径,把路径上面的数加起来可 ...
- NUC1131 Triangle【DP】
Triangle 时间限制: 1000ms 内存限制: 65536KB 通过次数: 1总提交次数: 1 问题描述 图1表示一个数字三角形. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 ...
- LeetCode:完全平方数【279】【DP】
LeetCode:完全平方数[279][DP] 题目描述 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n.你需要让组成和的完全平方数的个数最少. 示 ...
- 【DP】序列 题解
[DP]序列 题解 序列 题目 一个长度为kkk的整数序列bbb 1,bbb 2,-,bkbkbk(1≤bbb 1≤bbb 2≤-≤bkbkbk≤NNN)称为"好序列"当且仅当后一 ...
- BestCoder冠军赛 - 1005 Game 【DP】
[题意] 给出一个set,set中有几个数. 现在给出n个人,环成一圈搞约瑟夫... 开始时从第1号报数,每次从set中随机选出一个数s,等报数到s后,报s的人出圈,其他人继续报数. 最后只剩1人时, ...
最新文章
- 【数据结构】顺序队列的实现(C语言)
- 利用OpenCV实现图像拼接的代码
- 基于动态背包的多场景广告序列投放算法
- 程序清单3-1 测试能否对标准输入设置偏移量
- mysql优化 坑_mysql之我们终将踩过的坑(优化)
- SAP License:从SAP顾问面试看职场
- C# --- 用TimeSpan计算时间
- django 查询mysql_Django 数据库查询方法一
- NAT对语音业务的影响(终端控制方案…
- 启动Eureka客户端服务时报错:java.net.ConnectException: Connection refused:connect
- excel查看VBA代码快捷键
- 利用波士顿房价数据集实现房价预测
- 全国各地将推广电子证照,取代一证通
- 如何使用SLM生成涡旋光束
- FPGA自学:利用D触发器实现分频
- 数据库安装、数据导入及格式转换20200514
- 什么是 P2P、P2C 、O2O 、B2C、B2B、 C2C
- 微软dowhy 项目 原理_Microsoft的DoWhy是因果推理的出色框架
- 基于一阶倒立摆系统的模糊神经网络PID控制
- 手撕:经典问题的遗传算法代码
热门文章
- 从懵懂走向成熟,证明属于自己的征程
- 惊呆了!Java程序员最常犯的错竟然是这10个
- 为什么ZMap用一个小时内就能扫遍整个互联网
- 一般3d模型代做多少钱_3D打印模型一般需要多少钱?
- 【0day RCE】 Horde Groupware Webmail Edition RCE
- Pixel 4刷机常见问题指南(Android 11 211001版本可用!)
- 2018 dnc .NET Core、.NET开发的大型网站列表、各大公司.NET职位精选,C#王者归来
- android电视分辨率是多少合适,电视分辨率多少合适,目前口碑最好的电视机推荐...
- 【1086】角谷猜想
- 痞子衡嵌入式:利用GPIO模块来测量i.MXRT1xxx的系统中断延迟时间