Linux对拍脚本

4 篇文章 0 订阅

本文用于Linux下bash的对拍脚本:

Brute为本目录的暴力程序。。

Out为优化过的程序

make_count为造数据的。。

(我是用文件流的,所以不用重定向)

#!/bin/bash
while(true)do
./make_count
/usr/bin/time -f "%Us" ./Brute
/usr/bin/time -f "%Us" ./Out
diff ans out > null
if ([ $? -eq 0 ]); then
printf "\033[7;32mAccepted!!!\n\033[7;0m"
else
printf "\033[7;31mWrong Answer!\033[7;0m\n"
break
fi
sleep 1
done


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是指用不同的算法或不同的实现方式,对同一个问题进行多次求解,并比较结果是否一致的过程。对可以帮助我们验证算法的正确性和效率。 下面是在 Linux 下进行对的简单教程: 1. 编写暴力算法和优化算法的代码,并分别编译生成可执行文件。 2. 编写一个随机数据生成器的代码,并编译生成可执行文件。 3. 编写一个脚本文件,用于自动执行对过程。 4. 在脚本文件中,先执行随机数据生成器,将生成的数据保存到文件中。 5. 然后分别执行暴力算法和优化算法,将结果保存到不同的文件中。 6. 最后使用 diff 命令比较两个结果文件是否一致。 下面是一个简单的脚本文件示例: ```bash #!/bin/bash for ((i=1;i<=10;i++)) do ./data_generator > input.txt ./brute_force < input.txt > bf_output.txt ./optimized_solution < input.txt > opt_output.txt if diff bf_output.txt opt_output.txt >/dev/null ; then echo "Test case $i: PASSED" else echo "Test case $i: FAILED" exit 1 fi done echo "All test cases PASSED" exit 0 ``` 这个脚本文件会执行 10 次对,每次生成随机数据,然后分别执行暴力算法和优化算法,最后使用 diff 命令比较两个结果文件是否一致。如果两个结果文件一致,则输出 "PASSED",否则输出 "FAILED" 并退出程序。如果所有测试用例都通过,则输出 "All test cases PASSED"。 以上是在 Linux 下进行对的简单教程,希望对你有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值