礼物gift(DP)】的更多相关文章

这道题的DP非常的有意思…… 一开始我们总是会以为这是一个背包问题,直接dp[0] = 0,dp[j] += dp[j-c[i]]进行转移.之后统计一下从dp[m-minn]~dp[m]的答案之和为结果. 其中minn指花费最小的那个物品的花费.不过这样是会丢解的.因为统计的过程我们只统计了不选最小的时候的情况,我们其实完全没有考虑到,选择了比一个物件花费小的所有物件却没有选择这个物件的情况.也就是说,上面的做法其实是相当于强制性不取最小的+全取的情况之和. 那么我们就应该选择强制性不取第2,3…
男神的礼物 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1131 Description Lweb学长是集训队里公认的男神.有一天他要给美美的学姐姐准备礼物. Lweb学长可是会魔法的哟.为了准备一份礼物,男神要加工n份材料.每一次只能加工相邻的材料. 当男神加工两个魔法值为a,b的材料,男神都要消耗a*b的体力,同时在这个地方合成出魔法值(a+b)0的材料. 男神为了能节…
题目链接: [集训队作业2018]小Z的礼物 题目要求的就是最后一个喜欢的物品的期望得到时间. 根据$min-max$容斥可以知道$E(max(S))=\sum\limits_{T\subseteq S}^{ }(-1)^{|T|-1}E(min(T))$ 那么只需要知道每个子集中最早得到的物品的期望时间即可得出答案. 对于每个子集,最早得到的物品的期望时间就是一次选择能得到这个子集中元素的概率的倒数. 用一次选择能得到这个子集中的元素的方案数除上总方案数(每次共有$2*n*m-n-m$种选择方…
[CF506E]Mr. Kitayuta's Gift 题意:给你一个字符串s,你需要在s中插入n个字符(小写字母),每个字符可以被插在任意位置.问可以得到多少种本质不同的字符串,使得这个串是回文的.答案对10007取模. $|s|\le 200,n\le 10^9$ 题解:神题. 首先由于题目要求本质不同,所以我们为了防止重复,考虑从两边向中间不断复原回文串,如果新加入的字符与s两端(或一端)的字符相同,则匹配成功,继续匹配下一个字符.也就是说我们取的是s在回文串中最外面的出现位置. 为了方便…
男神的礼物 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Description Lweb学长是集训队里公认的男神.有一天他要给美美的学姐姐准备礼物. Lweb学长可是会魔法的哟.为了准备一份礼物,男神要加工n份材料.每一次只能加工相邻的材料. 当男神加工两个魔法值为a,b的材料,男神都要消耗a*b的体力,同时在这个地方合成出魔法值(a+b)%100的材料. 男神为了…
据说联赛之前写题解可以涨RP 这题的输入格式半天没看懂-其实是有q层摞在一起,每一层大小都是p*r,依次输入q层的情况.那么首先我们枚举三种挖方块的姿势,分别使切出的方块的上面/前面/右面是正方形的面.考虑其中的一种姿势,我们可以O(n^2)枚举正方形的面在原先的大立方体中的右下角坐标(i,j),那么大正方体的每一层中以(i,j)为右下角的完好正方形都有一个最大边长,我们把这些最大边长拿出来形成一个序列.因为最优方案中一定有一个位置的正方形达到了最大边长(否则一定可以得到边长更大的解),所以我们…
正题 题目链接:https://www.luogu.com.cn/problem/P7276?contestId=39577 题目大意 \(n\)个点的一棵树,\(k\)个关键点,两个人从根出发分别走一段路径回到根.要求每个关键点至少被一个人经过,求最短时间. 解题思路 相当于求两个覆盖所有关键点的联通子图,使得最大那棵最小. 树上只留下关键点和它们的祖先节点,这样就变为了所有点都要经过,也就是所有叶子都要经过. 然后比较显然的结论是一定会按照\(dfs\)从小到大的顺序走,所以可以直接\(dp…
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2228 题意:给出一个只含有NP两种字母的长方体.从中找出只含有字母N的长方体,造型为a*a*b,即必须有两个正方形的底.在此基础上使得a*b最大? 思路:首先对于p*q*r的长方体,可以枚举a*a这个面在p*q.p*r.q*r.不妨现在假设a*a在q*r这个面上.那么对于p个面,我们用f[i][j][k]表示在第i个面上,以(j,k)为右下角的最大正方形的边长.之后,对于p个面的每个(…
题解: 首先转化为平面问题 对于每一个z,f(x,y)的值为它能向上延伸的最大高度 ...莫名其妙想出来的是n^4 以每个点作为右下边界n^3枚举再o(n)枚举左下边界计算z的最大值 然而很显然这种做法简直就是智障 枚举每一个点作为最小值,向左向右延伸的最大值 然后显然就是N^3了…
数学期望 P=Σ每一种状态*对应的概率. 因为不可能枚举完所有的状态,有时也不可能枚举完,比如抛硬币,有可能一直是正面,etc.在没有接触数学期望时看到数学期望的题可能会觉得很阔怕(因为我高中就是这么认为的,对不起何老板了QwQ),避之不及. 但是现在发现大多数题就是手动找公式或者DP推出即可,只要处理好边界,然后写好方程,代码超级简短.与常规的求解不同,数学期望经常逆向推出. 比如常规的dp[x]可能表示到了x这一状态有多少,最后答案是dp[n].而数学期望的dp[x]一般表示到了x这一状态还…
495. Kids and Prizes Time limit per test: 0.25 second(s) Memory limit: 262144 kilobytes input: standard output: standard ICPC (International Cardboard Producing Company) is in the business of producing cardboard boxes. Recently the company organized…
Kids and Prizes ICPC (International Cardboard Producing Company) is in the business of producing cardboard boxes. Recently the company organized a contest for kids for the best design of a cardboard box and selected M winners. There are N prizes for…
题意: 有n个奖品,m个人排队来选礼物,对于每个人,他打开的盒子,可能有礼物,也有可能已经被之前的人取走了,然后把盒子放回原处.为最后m个人取走礼物的期望. 思路1: 排队取,第1个人取到1个,dp[1]=1;后面的人dp[i]=p取到礼物盒子+dp前面的取到礼物盒子=(n-dp[i-1])/n + dp[i-1]: #include"bits/stdc++.h" #define db double #define ll long long #define vl vector<l…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
桥接模式(Bridge)的定义 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?这就要使用桥接模式 将抽象部分与它的实现部分分离,使它们都可以独立地变化. 桥接模式(Bridge)的动机 当一种抽象类型可能有多种实现方式时,一般情况我们可以考虑使用继承来解决抽象类型的多种实现,在抽象类型中定义接口,而子类负责接口的具体实现.但这种做法缺乏灵活性,由于抽象类型和子类之间紧紧地绑定在一起,使得这种关系在运行时不能再修改,这使得它难以修改.扩展和重用…
对,如果你想把第5名粘进来,那么图片就是这么夸张. 然而和我并没有什么关系,实在是太菜了. 但是还是想吐槽出题人是真心没良心啊...做了达哥的良心题之后眼光极其挑剔 这套题的部分分设置非常愚蠢,唯一一个可用的部分分在T2,但是T2说的还很不清楚. T2其实已经完成了最艰难的转化题意,但是最后败在了细节上. T1也基本上是全场切,结果出锅了. 我想问一个问题啊:在时间比较紧的情况下,是应该打完题就打对拍,还是优先往下做题啊? skyh就是没脸.去厕所遇到他的话我这场绝对炸. 发现T2题意前遇到的…
1.什么是设计模式? 设计模式:在软件设计过程中常用的代码规范,针对特定的场景 2.应用场景: 麦当劳点餐  观察者模式   规定的代码格式 花店送花  :代理模式 真实对象(男同学)-----代理对象(花店人员)----用户(女同学)  //声明女孩对象(用户)  var girl = function(name){ this.name = name;  console.log(this);  } //声明男同学(真实对象) var boy = function(girl){ //女同学 th…
神题……胡乱讲述一下思维过程……首先,读懂题.然后,转化问题为构造一个长度为|T|+n的字符串,使其内含有T这个子序列.之后,想到一个简单的dp.由于是回文串,我们就增量构造半个回文串,设f(i,j,k)为构造到第i个位置,从前往后匹配到j,从后往前匹配到k,这样O(m*m*n)(没有观察到其转移的性质会再乘个26).再然后,发现不妙,在最后讨论奇偶.(我的思路到此为止……)接着,观察其转移的实质,发现其实dp的过程就是在一个有限状态自动机上行走,而有限状态自动机上的状态就是目前剩下的T,所以我…
[问题描述]人生赢家老王在网上认识了一个妹纸,然后妹纸的生日到了,为了表示自己的心意,他决定送她礼物.可是她喜爱的东西特别多,然而他的钱数有限,因此他想知道当他花一定钱数后剩余钱数无法再购买任何一件剩余物品(每种物品他最多买一个)时有多少种方案,两种方案不同,当且仅当两种方案中至少有一件品不同,可是由于他忙着准备泡下一个妹纸(chi),因此麻烦聪明的你帮帮忙.[输入格式]输入第一行 n 和 m, n 表示妹纸喜欢的礼物数目, m 表示现有的钱数,第二行 n个数,表示 n 个物品的价格.[输出格式…
[UOJ#422][集训队作业2018]小Z的礼物(min-max容斥,轮廓线dp) 题面 UOJ 题解 毒瘤xzy,怎么能搬这种题当做WC模拟题QwQ 一开始开错题了,根本就不会做. 后来发现是每次任意覆盖相邻的两个,那么很明显就可以套\(min-max\)容斥. 要求的就是\(max(All)\),而每个集合的\(min\)是很好求的. 如果直接暴力枚举集合复杂度就是\(2^{cnt}cnt\). 仔细想想每个子集我们要知道的是什么,只需要知道子集大小来确定前面的容斥系数,还需要知道覆盖子集…
3409 搬运礼物 CodeVS原创  时间限制: 1 s  空间限制: 64000 KB  题目等级 : 青铜 Bronze 题解       题目描述 Description 小浣熊松松特别喜欢交朋友,今年松松生日,就有N个朋友给他送礼物.可是要把这些礼物搬回家是一件很困难的事,具体来说,如果松松一次搬运x件礼物,就要花费w[x]的体力(显而易见,有w[x]<=w[x+1],搬得越多耗费体力越多).松松并不在意他会搬多少次,但是他想知道,自己最少花费多少体力,就可以把礼物全部搬回家. 输入描…
UOJ 思路 由于没有代码和AC记录的支撑,以下思路可能有错. 看到全部取完,大概可以想到min-max容斥. 由于期望的表达式里面合法方案的个数是在分母里面的,所以可以想到把它记录在状态里. 然而由于我菜,一开始只想到逐列DP,于是复杂度炸了-- 考虑插头DP:设\(f_{i,j,S,k}\)表示当前做到\((i,j)\),轮廓线上的状态是\(S\),已经有\(k\)个取到礼物的方案,带容斥系数的方案数. 转移想必乱搞就行了? 代码 咕咕咕…
题目描述 夏川的生日就要到了.作为夏川形式上的男朋友,季堂打算给夏川买一些生 日礼物. 商店里一共有种礼物.夏川每得到一种礼物,就会获得相应喜悦值Wi(每种 礼物的喜悦值不能重复获得). 每次,店员会按照一定的概率Pi(或者不拿出礼物),将第i种礼物拿出来. 季堂每次都会将店员拿出来的礼物买下来.没有拿出来视为什么都没有买到,也 算一次购买. 众所周知,白毛切开都是黑的.所以季堂希望最后夏川的喜悦值尽可能地高. 求夏川最后最大的喜悦值是多少,并求出使夏川得到这个喜悦值,季堂的期 望购买次数. 输…
题目描述 夏川的生日就要到了.作为夏川形式上的男朋友,季堂打算给夏川买一些生 日礼物. 商店里一共有n种礼物.夏川每得到一种礼物,就会获得相应喜悦值Wi(每种礼物的喜悦值不能重复获得). 每次,店员会按照一定的概率Pi(或者不拿出礼物),将第i种礼物拿出来. 季堂每次都会将店员拿出来的礼物买下来.没有拿出来视为什么都没有买到,也 算一次购买. 众所周知,白毛切开都是黑的.所以季堂希望最后夏川的喜悦值尽可能地高. 求夏川最后最大的喜悦值是多少,并求出使夏川得到这个喜悦值,季堂的期 望购买次数. 输…
[USACO]1.1.2 贪婪的礼物送礼者 Greedy Gift Givers 题目描述 对于一群要互送礼物的朋友,你要确定每个人送出的礼物比收到的多多少(and vice versa for those who view gift giving with cynicism). 在这一个问题中,每个人都准备了一些钱来送礼物,而这些钱将会被平均分给那些将收到他的礼物的人. 然而,在任何一群朋友中,有些人将送出较多的礼物(可能是因为有较多的朋友),有些人有准备了较多的钱. 给出一群朋友, 没有人的…
LINK:小Z的礼物 太精髓了 我重学了一遍min-max容斥 重写了一遍按位或才写这道题的. 还是期望多少时间可以全部集齐. 相当于求出 \(E(max(S))\)表示最后一个出现的期望时间. 根据min-max容斥 显然有 \(E(max(S))=\sum_{T\subseteq S}(-1)^{|T|+1}E(min(T))\) 对于这道题 要求出所有的T 直接\(2^{cnt}\)枚举不太现实. 但是我们仍要对每个集合求出其概率. 考虑从矩阵上进行dp来进行压缩状态 那么因为一个格子的选…
前言:麻麻我会写状压DP了! ---------------------------- 题目描述 愚人节到了!可爱的UOI小朋友要给孩子们送礼物(汗-原题不是可爱的打败图么= =..).在平面直角坐标系上(欧氏的),有 N (N≤17)个点,分别代表 N 个小朋友的地理位置:还有一个点,这是UOI的家,UOI的所有礼物都放在这里,UOI必须驼着礼物从这里出发,送完礼物以后再返回这里,然后再拿出礼物出发.UOI身上每多驼一个礼物,他的速度就减半.已知他不驼礼物的速度是 V.为了不耽误(你懂的),U…
bzoj 3055: 礼物运送 floyed first 设f[i][S]表示取到了S集合中的所有点(不一定是经过的所有点),最后停在了i的最优值. 初始就f[i][{i}] = dis[1][i] 状态转移直接转就好了 f[i][S] + dis[i][j] -> f[j][S + {j}]其中 i 属于 S,1 <= j <= n 设tim[S] = min{f[i][S]} 答案就取到 ans = min{max{tim[S],tim[Cs]}} #include <map&…
题目链接 位运算+\(DP\)=状压\(DP\)?(雾 \(a\&b>=min(a,b)\)在集合的意义上就是\(a\subseteq b\) 所以对每个数的子集向子集连一条边,然后答案就是这个\(DAG\)的最长链了,跑一遍拓扑排序就行了. 直接连边的复杂度是\(O(n^2)\),显然只能拿\(60'\). 题解里的连边方法我没怎么懂然后因为穷又不能看直播讲解 但是我拿到\(70\)分暴力分后(不要问我为什么有70)看了别人的代码,发现一个很巧妙的方法, 无需建图,\(DP\)的思想,我写…
题面 传送门 题解 好迷-- 很明显它让我们求的是\(Max(S)\),我们用\(Min-Max\)容斥,因为\(Min(S)\)是很好求的,只要用方案数除以总方案数算出概率,再求出倒数就是期望了 然而如果爆搜枚举子集的话复杂度是\(O(2^{cnt})\)的 发现总共的方案数只有\(2*n*m-n-m\)种,而且\(n\)非常小,我们可以考虑插头\(dp\) 设\(f_{i,S,k}\)表示做到了第\(i\)列,插头的状态为\(S\),覆盖方案数为\(k\)时的方案总数,并且这个里面已经考虑了…