hdu 5000 Clone

数学不好是原罪——高等数学笔记(汇总版) 这是本人之前考研的高数手写笔记,工科学硕数一考了146(满分150),笔记有一定参考价值,欢迎大家收藏借鉴。 阅读详情

        题意:克隆人有n个指标,对第i个指标,取值范围0~T[i]。活着的克隆人,必须比其他所有人至少有某一方面要强(对每一个人不一定要在同一方面强)。问最多同时存在多少克隆人。

        思路:找规律+dp。先自己造几个简单的数据,试着贪心造出解。然后发现,同时存在的每个克隆人,每个指标存在此消彼长的关系,就是你这方面强了,那方面就会相应弱。。然后可以发现,同时存在人数最多的情况下,所有人的全部指标的和居然可以是一样的。。然后就可以开始dp了,dp(i,j)表示前i个人指标和为j有多少种情况。。

        但是还有个问题,结果会很大,要求对1E9+7取模。。取模之后怎么找dp(n,0)~dp(n,sum)的最大值呢,直觉+尝试告诉我,j取sum/2的时候最大(sum是所有指标上限的和)。。。结果A掉了。


#include<iostream>
#include<cmath>
#include<queue>
#include<vector>
#include<algorithm>
#include<string.h>
#include<cstdio>

using namespace std;

#define ll long long

int a[2010];
int dp[2010][2010];

int main(){
    int t;
    cin>>t;
    while(t--){
        memset(dp,0,sizeof(dp));
        int n;
        cin>>n;
        int sum=0;
        for(int i=1;i<=n;i++){
            cin>>a[i];
            sum+=a[i];
        }
        dp[0][0]=1;
        for(int i=1;i<=n;i++){
            for(int j=0;j<=a[i];j++){
                for(int k=0;k<=2000;k++){
                    dp[i][k+j]+=dp[i-1][k];
                    dp[i][k+j]%=1000000007;
                }
            }
        }

        cout<<dp[n][sum/2]<<endl;
    }
    return 0;
}


8.Python基础语法(五)续【光说不练假把式,上题】 Python基础语法(二) 有关于Python循环语句的几道实操,让大家理解知识点更深更透彻~ 阅读详情

相关推荐

【Python・统计学】(两)多因素方差分析(原理及代码)

自学笔记,分享给对统计学原理不太清楚但需要在论文中用到的小伙伴,欢迎大佬们补充或绕道。ps:本文不涉及公式讲解(文科生小白友好体质)~(部分定义等来源于知乎) 本文重点:多因素方差分析 【1.多因素方差分析简单原理】 【2.多因素方差分析步骤】 【3.多因素方差分析代码】

TUTO_TUTO的博客 4864

hdu 5000 Clone(背包)

题目链接:hdu 5000 Clone 题目大意:DRD具有分身的能力,对于两个分身A和B来说,如果A的各个能力都强于B,那么B就无法生存,先给定DRD的n种能力的上限值,问最多有多少个克隆人可以共存。 解题思路:将n项能力值和相同的人算为一类克隆人,那么如果两个人处于同一类的话,一定是可以共存的,所以只要计算哪一类人的数量最多即可。所以用01背包直接搞起,但是因为答案要对1e9+7取

不慌不忙、不急不躁 1031

Ubuntu更新后VirtualBox报错rc=-1908?手把手教你修复Kernel driver not installed

本文详细解析了Ubuntu更新后VirtualBox报错rc=-1908的原因,并提供了完整的修复方案。通过重新安装VirtualBox、处理DKMS内核模块以及解决Secure Boot问题,帮助用户快速恢复虚拟机功能。特别针对Kernel driver not installed错误,给出了从诊断到修复的详细步骤。

weixin_42519781的博客 339

【HDU】5000 Clone 记忆化搜索

传送门:【HDU】5000 Clone 题目分析:这题我是meng

poursoul 806

MES系统领料申请、出库、确认到料各环节的处理

在WMS和MES系统协同的车间管理中,核心分工原则为:MES负责生产需求发起(领料申请)和结果确认(到料验收),WMS执行库存管理和物流作业。具体流程为:1)MES根据生产需求生成领料单推送至WMS;2)WMS完成拣货出库并调度AGV配送;3)车间在MES确认到料后解锁生产工序。系统边界严格限定:MES不参与库存/库位管理,WMS不干预生产决策。特殊场景(紧急补料、缺料异常等)通过标准化接口流程处理,确保生产与物流高效协同的同时保持账实一致。

做有价值的事,积累有价值的笔记! 584

深度学习动画实战:用MotorNerve系统5步实现自然角色交互

本文详细介绍了如何利用腾讯游戏的MotorNerve系统,通过深度学习技术5步实现自然角色动画交互。从环境搭建、基础运动控制到交互过渡和行走转向优化,该系统能显著提升游戏动画制作效率,尤其适合中小团队替代昂贵的动捕方案。重点解析了骨骼动画配置、PFNN控制器使用及Blender工作流集成等核心技术。

book8的博客 686

HDU 5000 Clone(鞍山网络赛D题)

HDU 5000 Clone 这场就出了3题。。就坑在这题上了,还好保住了名额 思路:要推出最大值的时候,每个人的属性和必然相同,并且这个和必然是所有和 / 2,这样的话,问题转化为给n个数字,要组合成sum / 2有多少种方法,就用dp背包推一遍就可以得解了。 现场的时候就没推出sum / 2就是答案 代码: #include #include const i

Remilia's 1599

WRF后处理总结:wrf-python与NCL在WRF后处理中的基本应用——变量提取、计算与可视化

判断需要提取的变量与诊断量确定后,使用getvar函数进行提取。可使用ncdump-h命令查看wrfout中的变量,wrf中的诊断量分类也可从官方文档处查阅。判断绘图类型所需的可视化绘图类型,决定了你在WRF后处理中的计算步骤。1D点线图:ll_to_xy interpline2D填色图:interplevel3D剖面图:vinterp vertcross绘图、美化色标、XY轴、标签的设置等等。

weixin_43750300的博客 1万+

HDU 5000 Clone(背包dp)

每只克隆有n个属性 下面n个数字表示每个属性的值范围为[ 0, T[i] ] 对于羊圈里的a羊和b羊,若a羊的每个属性都>=b羊,则a羊会杀死b羊。 问羊圈里最多存活多少只羊。 规律1:sum相同的羊不会互相杀死。 因为若2个羊的属性都相同,a羊某个属性要增加1,则a羊另一个属性要减少1,这样ab一定能共存。 规律2: sum不同的羊不会重合。 我们

piaocoder 579

告别手绘!用Aseprite+Unity Tilemap,从AI生成到2D游戏地图的保姆级搭建流程

本文详细介绍了如何利用Aseprite和Unity Tilemap从AI生成素材到搭建2D游戏地图的完整流程。涵盖AI生成素材的预处理、图层管理、动画制作,以及Unity中的Tilemap系统配置和性能优化技巧,帮助开发者高效创建像素风游戏地图。

weixin_29015483的博客 582

Ubuntu22.04安装ros(一键搞定)

然后发现可以一键安装,话不多说,直接终端输入如下指令。回车之后系统会自动安装ros。

m0_47313541的博客 7413

HDU 5000 Clone

题意: 每个克隆个体有n个属性  如果对于A、B两个个体  A的n个属性均不低于B的n个属性  那么B会被淘汰  问最多能有多少个体同时存活 思路: 根据数据大小猜一下是n^2的复杂度  往DP方面考虑一下 DP需要一个想法的支持  就是最优的那个集合中的元素的n个属性的和一定是一样的  为什么呢?  想象一下  假设最优的集合的属性和是5  这时你选过来一个和为6或者4的元素  那么至少

House 1469

R语言 地理加权随机森林(GWRFC )

随机森林可以产生高准确度的分类器,被广泛用于解决模式识别问题。然而,随机森林赋予每个决策树相同的权重,这在一定程度上降低了整个分类器的性能。该算法引入二次训练过程,提高分类正确率高目前,鲜有中文文章介绍GWRFC的技术文档,作者想使用该方法时会遇到重重困难,因此有必要利用R来建模,通过流程演示,供读者参阅。............

qingchen98的博客 6629

HDU 5000 Clone(瞎搞)

题目地址:HDU 5000 这个题当时有过这种想法,就是所有满足的情况的属性和是一定的。但是不会求方案数。。(太弱。。。)而且当时也很不确定猜测是否正确。。所以就放下了。。。算是通过学习了下dp求方案数吧。 至于那个猜测,我也给不出证明,但是个人觉得是只有在和都是相等的时候,才可以通过某一个数的增减来始终保持至少有一个较大的,至少有一个较小的,而假如和不一样的话,就会产生其中一个会消灭另一个的

scf0920 1405

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

HDU 5000 clone 动态规划

题意:有若干个克隆体,每个克隆体有n个属性,每个属性都一个上限t[i],如果某只克隆体每一项属性都比另外一只低,这只克隆体将会被杀死- -,问存在克隆体最多情况的方案数。 当时做网络赛的时候想出来了但是一直没对,从贪心一路想到动态规划,但是当时只考虑了两个循环- -现在重新拿起来AC百感交集。 贪心一路考虑,如果要存在最多的情况,他们的属性和应该是相等的,最合适的属性和应该是所有属性上限的和除

556

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

hdu5000 Clone

每个人有n种属性,每种属性的范围是[0,Ti], 若存在两个人,其中一个人的所有的属性均 给出n种属性的范围,求最多能存活多少人。 这题重点是要发现,共存最多的人的属性值和相等。 假如有两个人可以共存,他们属性和不等,那么一定能找到一个 属性和与其中一个相等 的人,且和另外一个不共存。 也可以发现,sumTi/2时,可以共存的人最多。 题目里面又说。。sum of T[i]

Unknown 887

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

hdu5000 Clone dp

Clone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1596    Accepted Submission(s): 737 Problem Description After eating food fro

EventQueue的博客 471

HDu 5000 Clone

Clone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 794    Accepted Submission(s): 392 Problem Description After eating food from

wust_ZJX的专栏 1122

HDU 5000 Clone

Clone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1438    Accepted Submission(s): 668 Problem Description After eating food from Ch

大咸鱼。。。 386

HDU 5000 Clone (多重背包)

题目:http://acm.hdu.edu.cn/showproblem.php?pid=5000 题意: 有一个人他可以克隆自己, 但克隆出来的自己并不完全一样。对于每两个自己,A和B,他会看n个属性,如果B的每一项属性都比不过A,那么B就不能存在。 每一个属性的评分范围为0-t [ i ],问最多能存在多少个他自己。 思路: 对于可以同时存在的两个人,假如有3个属性 a1 + b1

cookiesMonster 466

hdu 5000——Clone

题意:一堆克隆人,每个人有N个维度,如果有一个人的所有维度都不大于

char256 603

hdu5000 Clone(dp+规律)

hdu5000题目就是说一些人,每个人有一些能力值,如果某个人在每个能力值上都不比另一个人少,那么另一个人就不能和他同存,现给你能力的个数以及每种能力的上限,问最多有多少人可以同存。思路关键还是思路,对于能力值总和相同的人来说,他们是一定能够共存的,因为此消彼长,我这方面强在另一方面就比他弱。然后就是猜了(貌似有证明),在能力值总和为总能力值总和sum的一半的时候,人数最多,也就是像对于方程t1+t

天道酬勤 383

hdu5000Clone dp

//一个人可以被克隆 //被克隆的人有n种属性 //如果一个人a的所有属性都大于等于另外一个人b //那么b就会被消灭 //问最多能有几个被克隆的人 //可以知道最大的时候一定有一种方案这里的所有人的属性和相等 //因为对于两个共存的人a , c一定能找到一个属性和与其中一个相等且 //与另一个不共存 //由于是取模 , 所以先打表知道和取sum/2时最大 #include #include #i

ijbuhv的专栏 512

DP - hdu5000 Clone

题目: http://acm.hdu.edu.cn/showproblem.php?pid=5000 题意: 某君拥有n个属性值,某天闲着无聊克隆了若干个自己,若克隆体A的每格属性均大于等于克隆体B,则克隆体B会被杀死,给出n个属性值的上限,问最多能存活几个克隆体 思路: 数据量极小的问题一般都是DP = = 数据量极小的题一般都是DP = = 数据量极小的题一般都是

Keith_windniw的专栏 423
上一篇: hdu 5001 Walk
下一篇: hdu 5011 Game
squee_spoon
博客等级 码龄14年 61粉丝 455原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值