ZOJ 2868

      2868 Incredible Cows,题目大意:n(2-34)个数,分成2组,使2组之和的差最小,输出最小值。

 

      刚开始想到dfs枚举所有情况,结果 TLE。不知咋整,过了几天去网上搜了下,没什么结果,但看到有人说是 dfs+2分。即将所有的数先分成2半,如前1半,后一半,然后分别 dfs 枚举出2小半分别能形成的差值,由于n小了一半,dfs耗时减少,然后去2分搜索,即找出总的n个数中的差值最小。对于前1半中的差值a,在后一半的差值中2分找与a最接近的b,则能形成a-b,或b-a。如果能找到a=b,即能达到0,则不用继续,最小肯定是0。这样时间可以,我的是90ms。

 

      但是有很郁闷的地方,AC之前有大把大把的SF,检查了程序看不出错误,最后n次提交缩小范围,找到一个有可能sf的地方,而会sf的唯一可能就是 n=1。但题目中说n>=2。。。。so,相信不是这个问题,但还是+了个判断,终于SF没了,变成WA。很无语的n次提交后,决定还是+上个判断,是否n=1。然后提交,AC了,我艹!!这么长时间的调试,原来被一个描述中不可能出现的情况秒杀了,shit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值