zoukankan      html  css  js  c++  java
  • 作业三C++

    作业心得

    1.本次作业开始使用C++编写了(面向过程的C++,2333)
    2.粗略学习了一下文件输入输出,和项目的创建等(在大佬眼里最基本的操作QAQ,然而我还是有点晕晕的,平时都是ctrl+n新建源代码写的一个文件,大概没花非常多的 功夫去学这些吧)
    3.电梯的操作函数或者说类的主体操作还是不懂,大概有如下的想法:

    假设电梯停在第 i 层楼,我们计算出所有乘客总共爬楼梯的层数(与耗时数相当)是s。如果有down个乘客想去的楼层在第 i 层之下,有fit个乘客正好想去的楼层是第 i 层,有up个乘客想去的楼层在第 i 层之上。这个时候,重点来了:如果电梯改停在i-1层,所有目的地在第i - 1层以下的乘客可以少爬1层,总共少爬N1层,所有在i层及以上的乘客要多爬一层,总共多爬now+up层,这时总共需要爬s-down+fit+up。
    
    反之,如果电梯在i+1层停所有目的地在第 i 层以上的乘客可以少爬1层,总共少爬up层,所有在 i 层及以下的乘客要多爬一层,总共多爬fit+down层,这时总共需要爬s+down+fit-up层。
    
    可见,当down> fit+up 时,电梯在第i-1层楼停更好;当down+fit < up 时,电梯在i+1层停更好。其他情况在第i层更好。
    
    如此一来,问题的解法就出来了,从第一层开始考察,计算各位乘客走的楼层的数目(与耗时数相当),然后根据down,fit,up之间的关系进行调度,直到找到下一个最佳目标楼层;重复上述检索操作,直到全部送完。
    

    代码

    git address

    其中main函数

    #include <fstream.h>
    #include"moveing direction judge.h"
    using namespace std;
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    
    int main(int argc, char** argv) {
    	ifstream OpenFile("input.txt");
    	/*
    	int a;
    	SaveFile <<"......." 
    	while(!OpenFile.eof()
    	{
    		OpenFile.get(a);
    		.......
    	}
    	此处为操作函数/类 
    	OpenFile.close();
    	*/
    	
    	/*
    	ofstream SaveFile("output1.txt", ios::out);
     
        SaveFile << "......";
     
        SaveFile.close();
    	此处应该有操作
    	*/
    	 
    	return 0;
    }
    
  • 相关阅读:
    vba合并报表(搬一下)
    自选股票并绘制图像
    python代码--利用python进行数据分析里第十四章缺失代码
    python时间戳(1)
    python学习--列替换问题
    python学习--练习题28
    报错记录--004--panda删除添加问题
    python学习--练习题21-27
    python学习--练习题14-20
    python学习--练习题111213--分阶段判断问题、输出指定日期格式问题、统计字符问题
  • 原文地址:https://www.cnblogs.com/suolun/p/9033438.html
Copyright © 2011-2022 走看看