您的位置:首页 > 其它

做题时候的小技巧(长期更新)

2016-08-12 14:23 190 查看

1.

对拍程序

对拍程序是用来自己检测自己写的标算是否正确,主要是随机生成数据,用暴力做出一定对的答案,再用标算得出的结果一一与暴力结果比较

本程序暂停就说明得出的结果不同

在txt文件中输入一下代码,保存退出后改为.bat格式,运行即可

代码

@echo off
:loop
data
std
force
if not errorlevel 1 goto
pause

2.

在设置无穷大时,我们通常会选择0x7fffffff(7个f),因为这是int的最大值

但是如果我们要对边进行松弛操作,比如

d[y] = min(d[y] , d[x] + l);
 此时d[x] + l会超出maxint 于是就变成了一个非常小的负数,此时松弛操作就会有问题
因此,找到一个合适的无穷大的数非常重要

而我们找到了一个数 0x3f3f3f3f

0x3f3f3f3f = 1061109567 >1e9

可以看出这个数即使再加上一个自己也不会超出maxint

而它又比10^9大,基本上满足了大部分的题目要求

所以0x3f3f3f3f是个很好的“无穷大”

另外,在memset中,设置无穷大只需用0x3f即可

例如memset(d,0x3f,sizeof(d));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: