首页 / LINUX / Linux下对拍脚本与随机数生成器
Linux下对拍脚本与随机数生成器
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Linux下对拍脚本与随机数生成器,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1059字,纯文字阅读大概需要2分钟。
内容图文
![Linux下对拍脚本与随机数生成器](/upload/InfoBanner/zyjiaocheng/1125/12dbed92f819481bb4381c0ce2bef8cd.jpg)
对拍脚本
新建一个文档 check.sh 作为对拍脚本.
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642810.jpg)
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642832.jpg)
#!/bin/bash while(true)do #死循环 ./data > 1.in #运行数据生成器,将数据输出到1.in ./std < 1.in > out1 #std是标准(暴力)程序 ./now < 1.in > out2 #now是现在要被测的程序 if diff -w out1 out2; then #比较,-w 是忽略行末空格 echo AC #如果一样就输出AC else echo WA cat out1 out2 #不然就输出WA,并显示不相同的地方 break fi #结束if sleep 1 #如果使用srand(),随机数是秒级别的,用sleep 1让它延迟一秒,不至于相同的数据在一秒内跑好多遍 done #结束循环
在命令行 data.sh 所在的目录输入 ./check.sh 即可运行.
如果显示权限不够,则输入 : chmod 777 ./check.sh 即可.其中777代表对所有用户开放权限什么的.
随机数生成器
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642810.jpg)
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642832.jpg)
#include <cstdio> #include <cstdlib> #include <ctime> usingnamespace std; int main(){ srand((unsigned int)time(NULL)); for(int i=1;i<=2;i++){ printf("%d ",(int)(rand()%10000)); } return0; } //如果使用std=c++11编译的话可以不用stdlib和time头文件,改为random即可
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642810.jpg)
![技术分享](/upload/getfiles/default/2022/11/9/20221109044642832.jpg)
#include <cstdio> #include <random> usingnamespace std; int main(){ random_device seed; mt19937 RAND(seed()); for(int i=1;i<=2;i++) printf("%d ",(int)(RAND()%10000)); return0; } //必须使用std=c++11编译
示例是生成两个随机数.
原文:http://www.cnblogs.com/Sunnie69/p/5509796.html
内容总结
以上是互联网集市为您收集整理的Linux下对拍脚本与随机数生成器全部内容,希望文章能够帮你解决Linux下对拍脚本与随机数生成器所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。