算法模板 发表于 2023-03-08 更新于 2024-04-13 分类于 数据结构 阅读次数: 算法比赛中常用的函数,头文件,算法模板 特殊函数//万能头文件#include<bits/stdc++.h> #include<functional>sort(a,a+n,less<int>());//内置类型的由小到大排序greater<int>();//作用相当于 bool cmd(); #include <bitset> string s; s = bitset<8>(a[i]).to_string(); // 转换字符串 to_ulong() // 转换为unsigned long类型 to_ullong(); // 转换成unsigned long long类型 set(x, v); // 没有参数时 将全部位设为1 // 有一个x, 将x下标处设为1 // 两个参数,将x处设为v值 reset(x); // 置0 无参全部置,有参置下标 flip(x); // 取反,无参全部取,有参取下标处 text(x); // 检测下标处是不是1 返回true 0返回false any(); // 检查是否有1 none(); // 检查是否没有1 all(); // 检查是否全为1 count(); // 求1的个数 size(); // 求位数 #include <typeinfo>typeid(x).name(); // 获取x的类型 //输出重定向freopen("input.txt", "r", stdin);freopen("output.txt", "w", stdout);//控制台输入数据,如何输入文件结束标志//**在Windows下,输入完毕后先按Enter键,再按Ctrl+Z键,最后再按Enter键 //加快输入速度的两种方法ios::sync_with_stdio(false); cin >> x;scanf(); //类型转换#include <sstream>ss.clear(); // 清空ss << s;ss >> a; #include <cctype>isdigit(s[i]); // 若参数c为阿拉伯数字0~9 字符,则返回非0值,否则返回0。int n = stoi(s); // 把s转化为int型 #include <iomanip>cout << setw(2); // 设置位数setprecision(n) //设置显示小数精度为n位cout << stefill(c); // 设置填充字符setiosflags(ios::scientific) //指数表示setiosflags(ios::left) //左对齐setiosflags(ios::right) //右对齐 include <string>substr(int index, int mum); // 返回一个子字符串 //std::string::npos是一个常数,它等于size_type类型可以表示的最大值//用在 s.find() 返回值 算法模板