寒假作业3:简化电梯优化

Github仓库地址:hua-kui

ANS 1

- 代码情况

代码长度 | bug | 耗时

  • | - | -
    110+175行 | 11处 | 6~8h

- 分析

  • 做为不是一个未卜先知的电梯,在上一次的第二次作业中已经分析过此类情况,即(ANS 2情况),只需要按照5个请求顺推模拟即可。
  • 因此只需要建立循环重复语句来进行模拟。

- BUG分析

  • 还是做为+1S-1S的细节判断,这个导致结果错误了好久。
  • 其他一些边界判断的跳出问题。
  • 模拟中的数据更新,在上一次的代码中优化更新,加上了110行。
  • 还有些BUG正在改进

- 关于输入与输出(input.txt与output.txt)的使用心得与常见用法

#include <stdio.h> // 实际使用中发现freopen也包含在iostream中,C++代码#include <iostream>即可。  
int main()  
{  
     freopen("input.in", "r", stdin);  
     freopen("output.out", "w", stdout);  
               
    //主要代码
               
     fclose(stdin);  
     fclose(stdout);  
  
     return 0;  
}  

  • PS:在进行调试的时候我们一般会把freopen与fclose注释掉。
  • 通常我们用文件读入来进行数据比对,有些时候在本地黑框.EXE(误)中有些数据会被吃掉,(其实是显示不出来),这个时候我们就可以将他存在output.txt里,进行比对,来查找自己代码中的BUG
  • 我们用文件读入来写入一些大的数据,因为在直接调试时数据过于庞大不便输入。
  • 我们用文件输入输出来进行打表暴力:即当有时题目答案唯一,例如:N=1、2、3时,ANS=?,这类题目通常当N=A时答案具有唯一性,因此我们用暴力的写法解出答案,存在output.txt里,然后新建数组,把output.txt里的数据存入数组,直接输出答案(暴力出奇迹
  • 进行对拍比对
posted @ 2018-02-22 21:22  繁星倒影  阅读(148)  评论(0编辑  收藏  举报