摘要: mine: 暴力不说了 divide: 题意:把某串数分为三个部分,部分可为空。求所以三个部分的最大值中的最小值。 题解:以中间的区间为搜差部分,枚举第一个端点,二分找第二个断点。 我的错:一个是我想当然把中间当成了最大值,简直不能再脑残,应该是使第二和第三个区间尽可能接近,然后max区间1,2,3 阅读全文
posted @ 2016-07-14 19:19 sci 阅读(239) 评论(0) 推荐(0) 编辑
摘要: hdoj 1754: 题意:大概就是单点更新加上查询最高分 注意: while(~scanf("%d %d",&n,&m))多组数据差点遭坑,返回值是正确输入数据的个数,比如这里是2。当然有多组数据就要注意数据清零。 另外本题多次RE,理由十分有趣,数据范围定错。简直人生不能再美好。 poj 326 阅读全文
posted @ 2016-07-14 19:05 sci 阅读(108) 评论(0) 推荐(0) 编辑
摘要: block: 此题较为简单,正解就是差分数列。有学神用了三行,录如下: for(int i=1;i<=n;i++) {cin>>h[i]; if(h[i]>h[i-1]) sum+=h[i]-h[i-1];} 我个人的方法与学神的方法思路是一样的,只说他求的是大的减小的,我求小的减大的 思路如图: 阅读全文
posted @ 2016-07-12 21:54 sci 阅读(165) 评论(0) 推荐(0) 编辑
摘要: circle: 快速幂。。。我居然忘了,还是之前在网上A了的 果然基础不牢固,只好又看一遍快速幂。简而言之就是次方不断的>>1,网站测有个warning,说是n>>1+1这样写不好,最好还是加个括号,好嘛。。。然后还有个易错点就是取模的时候,先模再乘,先乘可能会超int。 match: 口吐三升血, 阅读全文
posted @ 2016-07-11 19:36 sci 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 某商店中每种商品都有一个价格。特殊优惠商品是把一种或几种商品分成一组。并降价销售。编一个程序,计算某个顾客所购商品应付的费用。 要充分利用优惠价以使顾客付款最小。你不能变更顾客所购商品的种类及数量。 输入数据 用两个文件表示输入数据。第一个文件INPUT.TXT描述顾客所购物品(放在购物筐中);第二 阅读全文
posted @ 2016-07-10 19:51 sci 阅读(263) 评论(0) 推荐(0) 编辑