摘要: 题目大意你需要攒一台电脑,需要从每种配件中选取1个,每种配件有若干个,每个配件有一个价格p和性能q。要求在不超出预算sum的情况下求最好的性能。一台电脑的性能是各个配件的性能最小值。0 ≤p≤ 1 000 000,0 ≤ quality ≤ 1 000 000 000;分析最开始想的是DP,但是想了很久仍然没有思路,老大提示可能是二分性能。于是,可以考虑二分性能,从1 000 000 000开始,... 阅读全文
posted @ 2008-08-14 19:56 DosXP 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 题目大意给出一个整数n,输出第n个英文拼写不含字母‘E’的数字。 分析先分析0~9以内得数,只有2,4,6符合条件; 10~99以内,10几,20几,70几,80几,90几都不行。符合条件的数字一共19个; 100~999,没有符合条件的数; 1000再次符合条件.... 如此地推下去,则发现可以将n转换成20进制(为什么不是19进制呢?),再输出每个20进制位上的数k对应的1000以内第k个符... 阅读全文
posted @ 2008-08-13 13:43 DosXP 阅读(545) 评论(0) 推荐(0) 编辑
摘要: TOJ 3021给出若干个罗马数字,求和,并用罗马数字输出。思路很简单,需要两个函数进行转换。 关于罗马数字[来自百度百科]罗马数字有如下符号: Ⅰ(1)Ⅴ(5)Ⅹ(10)L(50)C(100)D(500)M(1000) 计数规则: 1.若干相同数字连写表示的数是这些罗马数字的和,如III=3; 2.小数字在大数字前面表示的数是用大数字减去小数字,如IV=4; 3.小数字在大数字后面表示的数... 阅读全文
posted @ 2008-08-13 13:27 DosXP 阅读(15460) 评论(2) 推荐(1) 编辑
摘要: 题目大意给定一个r*c的矩阵,和一个字符串。将字符串转化为对应的数字串之后按照二进制从外到内绕圈填如数组,多余部分用0填充。如图: 最后,输出矩阵。 模拟方法第一次写的时候写废了,因为自己模拟的方法是在太龌龊。之所以采用这种龌龊的方法是因为曾经这样AC过一个题,下面给出这次的AC代码,以后也要继续优化自己的代码风格。 Code highlighting produced by Actipr... 阅读全文
posted @ 2008-08-11 20:09 DosXP 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 题目大意 有一个4xn的棋盘,无限个1x2的多米诺骨牌。输入n,求把棋盘完美覆盖的方法数。 这应该是一个组合题,但是我的组合还有极大的提升空间,所以根据老大的意见用dp做。方法如下 二维数组dp[n][m]表示有n列且该列状态为m的时候的排列方法数。m用四位二进制表示,第a位表示该列第a行的状态,1已经覆盖,0表示没有被覆盖。初始状态为: Code highlighting produc... 阅读全文
posted @ 2008-08-11 19:49 DosXP 阅读(876) 评论(1) 推荐(0) 编辑
摘要: 题目大意:给定两个正整数x,y,求最大的不能由这两个数的线性组合a*x+b*y(a,b>=0)表示的数。 结论如下: 1.如果gcd(x,y)=1,则这个数是x*y-x-y; 2.否则,这个数是无穷大。 证明: 到现在还没看懂,看懂了再补上。 阅读全文
posted @ 2008-08-11 19:13 DosXP 阅读(288) 评论(2) 推荐(0) 编辑
摘要: 只想找个贴代码好看的地方... 以前的在http://hi.baidu.com/dosxp08 阅读全文
posted @ 2008-08-11 18:16 DosXP 阅读(114) 评论(0) 推荐(0) 编辑