SRM 588 DIV1
250
题意:有n首不同的曲子,你唱每首曲子需要花费a的时间以及一个调整的时间b,调整的时间为此首歌的曲调减去上一首歌的曲调的绝对值。
思路:我们用dp[i][k]表示前i首歌只唱k首用的最小时间花费,最后拿所有的dp[i][k]和T做比较,满足条件则选取最大的k。这样的思路是没错的,但是...没注意到一种情况,dp[i][k]只要选了就保证序列定下来了,因为取的是绝对值,序列定下来的说明和时长a没关系,所以这时候要保证abs最小,又因为是从前往后推,所以只有排序后才能保证绝对值最小,有点贪心的意味。
500
思路:dp[i][k]表示i这个状态有k这种钥匙的数量,用位运算枚举所有的状态,后一个状态由前一个状态递推过来,dp[i][k],k有3种,但是因为开门只需要消耗红和绿(当满足的情况),白可充当红绿。对于到达这个状态,它之前所开的门消耗的钥匙和总共得到的钥匙是一样的,所以这时候我们就要尽量保证白钥匙最大,以保证结果最优。
SRM 588 DIV1的更多相关文章
- Topcoder SRM 643 Div1 250<peter_pan>
Topcoder SRM 643 Div1 250 Problem 给一个整数N,再给一个vector<long long>v; N可以表示成若干个素数的乘积,N=p0*p1*p2*... ...
- Topcoder Srm 726 Div1 Hard
Topcoder Srm 726 Div1 Hard 解题思路: 问题可以看做一个二分图,左边一个点向右边一段区间连边,匹配了左边一个点就能获得对应的权值,最大化所得到的权值的和. 然后可以证明一个结 ...
- 图论 SRM 674 Div1 VampireTree 250
Problem Statement You are a genealogist specializing in family trees of vampires. Vampire famil ...
- SRM 583 DIV1
A 裸最短路. class TravelOnMars { public: int minTimes(vector <int>, int, int); }; vector<int> ...
- SRM 590 DIV1
转载请注明出处,谢谢viewmode=contents">http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlov ...
- Topcoder SRM 602 div1题解
打卡- Easy(250pts): 题目大意:rating2200及以上和2200以下的颜色是不一样的(我就是属于那个颜色比较菜的),有个人初始rating为X,然后每一场比赛他的rating如果增加 ...
- 状态压缩DP SRM 667 Div1 OrderOfOperations 250
Problem Statement Cat Noku has just finished writing his first computer program. Noku's compute ...
- 数学 SRM 690 Div1 WolfCardGame 300
Problem Statement Wolf Sothe and Cat Snuke are playing a card game. The game is played with exa ...
- SRM 618 DIV1 500
非常棒的组合问题,看了好一会,无想法.... 有很多做法,我发现不考虑顺序的最好理解,也最好写. 结果一定是两种形式 A....A dp[n-1] A...A...A sgma(dp[j]*dp[ ...
随机推荐
- AJAX案例二:简单表单验证
案例:如果用户名输入为张三,那么在失去焦点时后面会显示该用户名已被注册,否则显示可以注册! <%@ page language="java" import="jav ...
- UVA 11987 Almost Union-Find (并查集+删边)
开始给你n个集合,m种操作,初始集合:{1}, {2}, {3}, … , {n} 操作有三种: 1 xx1 yy1 : 合并xx1与yy1两个集合 2 xx1 yy1 :将xx1元素分离出来合到yy ...
- mysql replace into用法与坑
需要主键一致 PRIMARY KEY (id) PRIMARY KEY (id, ts) 坑: https://blog.xupeng.me/2013/10/11/mysql-replace-into ...
- poj2385 dp(递推)
题目链接 :http://bak3.vjudge.net/contest/136499#problem/D 题意: //转移方程dp[i][j]=max(dp[i-1][j],dp[i-1][j-1] ...
- js整理2
字符串 类型 var a = "abc"; var b = new String( a ); var c = Object( a ); typeof a; // "str ...
- ember.js:使用笔记1-数组数据统一显示
ember中数据一般都是以array的形式存储的,控制器使用,如: App.DataController = Em.ArrayController.extend({}); 想要在一个页面中输出所有的数 ...
- 分享Kali Linux 2016.2第42周镜像文件
分享Kali Linux 2016.2第42周镜像文件Kali Linux官方在10月16日发布Kali Linux 2016.2的第42周镜像文件.这一次不再像上几次,推迟提供32位镜像文件,而是同 ...
- vector初始化
对vector对象来说,直接初始化的方式适用于3种情况:1.初始值已知且数量少:2.初始值是另一个vector对象的副本:3.所有元素的初始值都一样.此外还有一种更常见的情况是4.创建一个vector ...
- eclipse 异常Unhandled event loop exception解决办法
http://blog.csdn.net/leiswpu/article/details/26712709
- linux 服务初识
1. daemon 和 service 系统为了实现某些功能,必须提供一些服务(service),但是service的提供总是需要进程的运行,实现service 的程序我们称为daemon(“守护神” ...