zoukankan      html  css  js  c++  java
  • [打基础]一些C++自带的库(持续更新)

    • iomanip

    manip是manipulator(嗯,操作器?)的缩写,对应头文件就是

    #include<iomanip>
    

     在算法竞赛里用得到的应该是两个接口:进制转换(8,10,16)/保留X位有效数字

    #include<cstdio>
    #include<iostream> 
    #include<iomanip>
    using namespace std;
    int n;float m;
    int main()
    {
        scanf("%d%f",&n,&m);
        cout<<setbase(8)<<n<<endl<<setprecision(5)<<m;
        return 0;
    }

     需要注意setprecision会四舍五入,同时如果有后缀0的话直接不输出

    • sort快排~

    嗯我们注意一下如果我要对$a[1]$到$a[n]$的元素进行排序,应该写成 sort(a+1,a+n+1,cmp); ,这是个左闭右开区间!

    后面的cmp是我们自定义的比较函数,默认是比较“小于”关系,比如我们对两个自定义的类型Point进行比较,就可以写成:

    inline bool cmp(const Point &a,const Point &b)
    {
        if(a.x==b.x)return a.y<b.y;
        return a.x<b.x;
    }

    当然我们也可以对某些类型自定义“小于”关系,比如

    inline Point operator <(Point a,Point b)
    {
        if(a.x==b.x)return a.y<b.y;
        return a.x<b.x;  
    }
  • 相关阅读:
    跳跃游戏
    不同路径
    最大子序和
    最长回文子序列
    最长公共子序列
    零钱兑换
    合并区间
    寻找数组的中心索引
    制造小程序中的一些经验
    h5写的一个签到积分系统
  • 原文地址:https://www.cnblogs.com/yoshinow2001/p/13490013.html
Copyright © 2011-2022 走看看