002.简易对拍器

news/2025/12/7 18:16:33/文章来源:https://www.cnblogs.com/ssbt/p/19318257

对拍

假设我们拿到这样一个题目:

求和

Input

两行,第一行一个整数n(2<=n<=100)

第二行n个整数A1,A2……An (-100<=Ai<=100)

Output

这n个整数的和

一、应用条件:

1 . 一份完全正确的代码:stand.cpp

可以是自己写的大暴力,也可以是别人已经ac的代码

比如我们可以写出这样一个暴力:

#include<iostream>
int main(){int n,a,ans=0;std::cin>>n;for(int i=0;i<n;i++){std::cin>>a;if(a>=0){for(int j=0;j<a;j++){ans++;}}else{for(int j=0;j<a;j++){ans--;}}}std::cout<<ans;
}

假如我还没有学过加法,只会掰着手指头记数,就会写出这样一段代码

显然,不考虑复杂度,这是正确的


2 . 模拟随机的输入:rand.cpp

  • Sample Input格式一致
  • 数据范围完备合法
#include<bits/stdc++.h>
int main(){std::mt19937_64 rng(std::chrono::steady_clock::now().time_since_epoch().count());//生成一个随机的64位数[0,2^64-1]long long L=2;long long R=100;std::uniform_int_distribution<long long> dist(L, R);long long a=dist(rng);//生成的a是一个[2,100]的随机数printf("%lld\n",a);L=-100;R=100;for(int i=0;i<a;i++){printf("%lld ",dist(rng));}//生成a个[-100,100]的随机数
}

通过上面的程序我们可以得到这样的Input

//input:
7
4 -82 45 26 -61 2 99

3 . 待测试代码: text.cpp

可能存在bug的代码

#include<iostream>
int main(){int n,a,ans=0;std::cin>>n;for(int i=0;i<n;i++){std::cin>>a;if(a==64)ans+=54;else ans+=a;}std::cout<<ans;
}

由于想不到会出现什么bug,我选择手动添加一个

这是一个明显的错误,但更多情况下bug会很隐蔽


二、对拍器实现

duipai.cpp实现

#include <bits/stdc++.h>
using namespace std;
//手动实现比较函数
bool compareFiles(const string& file1, const string& file2) {ifstream f1(file1), f2(file2);string s1, s2;ostringstream oss1, oss2;oss1 << f1.rdbuf();oss2 << f2.rdbuf();s1 = oss1.str();s2 = oss2.str();while (!s1.empty() && isspace(s1.back())) s1.pop_back();while (!s2.empty() && isspace(s2.back())) s2.pop_back();return s1 == s2;
}
int main() {int test_case = 1;while (true) {//生成随机数据system("rand.exe > input.txt");//stand.cpp和text.cpp分别处理数据system("stand.exe < input.txt > stand_out.txt");system("text.exe < input.txt > text_out.txt");//比较输出if (!compareFiles("stand_out.txt", "text_out.txt")) {cout << "\nWA\n";break;}cout << "AC #" << test_case << endl;test_case++;}return 0;
}

最后出错的信息会留在下面三个txt文件中

input.txt

stand_out.txt

text_out.txt


简易脚本封装

为了方便使用,实现如下两个bat文件:

run.bat

@echo off
cls
echo 编译中...
echo.:: 编译所有程序
g++ -o rand.exe rand.cpp -std=c++17 -O2 2>nul
if errorlevel 1 (echo ? rand.cpp 失败 & pause & exit)
echo ? randg++ -o stand.exe stand.cpp -std=c++17 -O2 2>nul
if errorlevel 1 (echo ? stand.cpp 失败 & pause & exit)
echo ? standg++ -o text.exe text.cpp -std=c++17 -O2 2>nul
if errorlevel 1 (echo ? text.cpp 失败 & pause & exit)
echo ? textg++ -o duipai.exe duipai.cpp -std=c++17 -O2 2>nul
if errorlevel 1 (echo ? duipai.cpp 失败 & pause & exit)
echo ? duipaiecho.
echo 编译成功
echo.
echo Ctrl+C 退出
echo.duipai.exe
pause

clean.bat

@echo off >nul 2>&1
if exist input.txt ((echo Sample Input & type input.txt & echo. & echo Sample Output & type stand_out.txt & echo. & echo Wa Output & type text_out.txt) > WA.txt 2>nul
)
del input.txt stand_out.txt text_out.txt *.exe 2>nul >nul

三、使用方法

初始配置

1、新建文件夹

添加2个txt文件,4个cpp文件:

run.txt

clean.txt

duipai.cpp

rand.cpp

stand.cpp

text.cpp

2、配置duipai.cpp , run.bat , clean.bat

复制粘贴,然后改后缀即可

使用

1、实现rand.cpp

2、将stand.cpp,text.cpp粘贴进来

3、双击ran.bat

这会产生一些exe、txt文件

4、双击clean.bat

5、查看WA.txt


未来使用时只需

  • 修改rand.cpp

  • 粘贴stand.cpp、text.cpp

  • 运行run.bat、clean.bat


四、结语

注意:即使确保rand.cpp正确、stand.cpp正确,也不能100%找出bug

感谢观看

如果能对你有所帮助,不胜荣幸

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/991678.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025东莞蔚林服饰毛衣厂家实力榜:六家羊绒针织技术代表企业,小香风与高领长款男女童装深度解析

2025东莞蔚林服饰毛衣厂家实力榜:六家羊绒针织技术代表企业,小香风与高领长款男女童装深度解析 在纺织服装产业的版图中,毛衣与针织衫作为兼具保暖性与时尚感的经典品类,其市场格局正经历着从规模化生产向精细化、…

windows c++ 程序的编译分析

本机环境 mingw64C:\mingw64\bin卷 Windows 的文件夹 PATH 列表 卷序列号为 F023-2216 C:\MINGW64\BINaddr2line.exear.exeas.exec++.exec++filt.execc.execpp.exedlltool.exedllwrap.exeelfedit.exeg++.exegcc-ar.exe…

AI元人文的奠基性架构:论“意义行为原生”理论与数字文明价值操作系统

AI元人文的奠基性架构:论“意义行为原生”理论与数字文明价值操作系统 摘要 在人工智能从工具性存在向文明性存在演进的关键节点,传统“价值对齐”范式因预设静态、可完全表征的价值真理而陷入困境。本文系统阐释了岐…

2025东莞精密模具厂家实力榜:宏良塑胶电子以高精度注塑技术领跑,六家本土技术代表企业核心优势深度解析

2025东莞精密模具厂家实力榜:宏良塑胶电子以高精度注塑技术领跑,六家本土技术代表企业核心优势深度解析 在全球制造业的精密化浪潮中,精密模具,尤其是高精度塑胶模具与精密注塑模具,已成为决定电子产品、汽车部件…

三项神经突破变革机器人学习

文章详细介绍了三项由某研究机构提出的神经突破技术,用于革新机器人学习。这些技术包括用于提升仿真预测精度的神经机器人动力学模型、从人类动作捕捉数据中学习灵巧技能的参考范围探索方法,以及结合视觉与触觉反馈来…

2025广东正达松远智能科技实力榜:给汤机与重力铸造自动化领跑,六家高潜力本土品牌深度解析

2025广东正达松远智能科技实力榜:给汤机与重力铸造自动化领跑,六家高潜力本土品牌深度解析 在制造业向智能化、精密化转型的浪潮中,压铸与机加工领域的自动化水平已成为衡量企业核心竞争力的关键指标。其中,给汤机…

2025 最新墙面艺术涂装服务商 / 厂家 TOP5 评测!技术创新 + 美学赋能权威榜单发布,重新定义空间装饰新体验,肌理壁膜 艺术漆 墙面艺术涂装 高端艺术漆

随着人们对居住与商业空间美学需求的不断提升,墙面艺术涂装已成为打造个性化与高品质环境的核心元素。本榜单基于技术实力、产品体系、服务网络、环保性能及行业影响力五大维度,结合市场反馈与专业评测,权威解析202…

深入解析:回溯剪枝的“减法艺术”:化解超时危机的 “救命稻草”(三)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025铁氟龙高温线厂家实力榜:明秀电子以极细线径技术领跑,六家高潜力本土品牌深度解析

2025铁氟龙高温线厂家实力榜:明秀电子以极细线径技术领跑,六家高潜力本土品牌深度解析 在高端制造与精密电子领域,特种线缆扮演着至关重要的“血管”与“神经”角色。其中,铁氟龙高温线以其卓越的耐高温、耐腐蚀、…

Ubuntu 搜狗输入法安装

本文于 2019年3月9日 编写 安装搜狗输入法之前,先执行以下命令 sudo apt-get update sudo apt-get install fcitx-bin sudo apt-get install fcitx-table 执行成功之后,打开“区域与语言语言”里面的“管理已安装的语…

图解IIS8上解决ASP.Net第一次访问慢的处理

图解IIS8上解决ASP.Net第一次访问慢的处理Posted on 2025-12-07 17:57 billpeng 阅读(0) 评论(0) 收藏 举报看这里!!!!图解IIS8上解决ASP.Net第一次访问慢的处理-百度经验 本篇经验以IIS8,Windows Server 20…

2025工业制冷设备实力榜:凯诺机械以高效节能技术领跑,六家国产冷水机厂家核心优势深度解析

2025工业制冷设备实力榜:凯诺机械以高效节能技术领跑,六家国产冷水机厂家核心优势深度解析 工业制冷设备,作为现代制造业的“温度心脏”,其性能的优劣直接关系到生产线的稳定性、产品的良品率以及企业的能耗成本。…

2025电热元件厂家实力榜:赫斯特(东莞)电热科技以创新热流道发热圈领跑,六大核心发热组件深度解析

2025电热元件厂家实力榜:赫斯特(东莞)电热科技以创新热流道发热圈领跑,六大核心发热组件深度解析 在现代工业制造体系中,电热元件作为能量转换的核心部件,其性能的优劣直接关系到生产设备的效率、能耗与最终产品…

python题库 No.28 shopping

阿文去超市购物,买的商品单价为列表price和数量为列表num。 他结算时发现苹果单价错了,本来应该是5.5元一斤的,却写出了55 请帮他修改苹果单价,定义函数sum(),传入参数price和num,计算商品总价money。 最后格式化…

2025东莞中控自动化冲压机械手实力榜:六家国产高精度摆臂与二次元拉伸技术代表企业深度解析

2025东莞中控自动化冲压机械手实力榜:六家国产高精度摆臂与二次元拉伸技术代表企业深度解析 在制造业向智能化、自动化加速转型的浪潮中,冲压自动化设备作为提升生产效率、保障产品质量与稳定性的核心装备,其重要性…

博客4

作业①: o 要求: ▪ 熟练掌握 Selenium 查找 HTML 元素、爬取 Ajax 网页数据、等待 HTML 元素等内 容。 ▪ 使用 Selenium 框架+ MySQL 数据库存储技术路线爬取“沪深 A 股”、“上证 A 股”、 “深证 A 股”3 个板块…

【OPENGL ES 3.0 学习笔记】第十七天:模型矩阵、视图矩阵与投影矩阵 - 详解

【OPENGL ES 3.0 学习笔记】第十七天:模型矩阵、视图矩阵与投影矩阵 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fami…

2025 AI 搜索品牌监测工具选型指南:主流系统推荐与排名洞察解决方案

2025 AI 搜索品牌监测工具选型指南:主流系统推荐与排名洞察解决方案随着生成式 AI 成为品牌曝光核心渠道,企业对 “AI 搜索品牌推荐与排名监测工具” 的需求持续攀升。京报网 2025 年 11 月报道指出,国内企业选择此…

有名的汽配车间通风降温工业冷风机源头厂家,工厂降温车间/生产车间通风降温/敞开式车间通风降温/工厂车间降温通风工业冷风机厂家哪家好

在工业制造领域,尤其是汽配、机械加工等精密作业车间,高温闷热的环境不仅直接影响员工的工作舒适度与生产效率,更可能对设备精度、产品质量构成潜在威胁。如何经济、高效地实现大面积厂房的通风降温,成为众多制造企…