• 一些加快 程序运行速度的方法


    程序的运行时间是各位oier最头疼的限制之一,只要你运用如下算法,相信程序的运行时间会有巨大的改观

    1、手动o2优化

    提示:本功能仅限平时做题使用,在noip等比赛中是禁止的。

    #pragma GCC optimize(2)
    

    把这一句话放到程序的最开头即可实现

    2、运用读入优化模板

    本模板推荐noip等比赛中使用。

    考虑到部分题目的n或m较大,相对应的n行m列的读入规模就会非常大,一般来说,用scanf流比cin流更快一些(因为cin是智能判断类型呀),但最快的肯定是用读优。

    void read(int &x) { int f=1;x=0;char s=getchar(); while(s<'0'||s>'9'){if(s=='-')f=-1;s=getchar();} while(s>='0'&&s<='9'){x=x*10+s-'0';s=getchar();} x*=f; }
    

    推荐使用此读入优化模板,码量较少。

    3、运用输出优化模板

    相比读入,输出优化就显得没什么用处了,因为一般输出的数据仅仅有1个数字或几个,但是如果要输出方案等较长的,输出优化还是不错的选择

    void print(int x)
     { 
     if(x<0) { putchar('-'); x=-x; } if(x>9) print(x/10); putchar(x%10+'0'); }
    

    其实写一个并不是很费劲,你说呢?

    后面的就不相细解释了,相细大家应该一说就知道吧

    4、化递归为递推

    5、搜索为记搜

    6、搜索转动归

    7、。。。后续将持续补充QAQ

  • 相关阅读:
    深入理解计算机系统读书笔记之第二章信息的表示和处理
    深入理解计算机系统读书笔记之第一章:漫游
    算法三之归并排序
    算法二之子集和数问题
    算法一之N皇后问题
    刚刚注册写一写
    linux alias(命令别名)
    linux [CTRL]+c与[CTRL]+d
    linux终端类型
    linux 进程简介
  • 原文地址:https://www.cnblogs.com/ShineEternal/p/10834320.html
Copyright © 2020-2023  润新知