// C、传统 C++
#include <assert.h> //设定插入点
#include <ctype.h> //字符处理
#include <errno.h> //定义错误码
#include <float.h> //浮点数处理
#include <fstream.h> //文件输入/输出
#include <iomanip.h> //参数化输入/输出
#include <iostream.h> //数据流输入/输出
#include <limits.h> //定义各种数据类型最值常量
#include <locale.h> //定义本地化函数
#include <math.h> //定义数学函数
#include <stdio.h> //定义输入/输出函数
#include <stdlib.h> //定义杂项函数及内存分配函数
#include <string.h> //字符串处理
#include <strstrea.h> //基于数组的输入/输出
#include <time.h> //定义关于时间的函数
#include <wchar.h> //宽字符处理及输入/输出
#include <wctype.h> //宽字符分类
//////////////////////////////////////////////////////////////////////////
// 标准 C++ (同上的不再注释)
#include <algorithm> //STL 通用算法
#include <bitset> //STL 位集容器
#include <cctype>
#include <cerrno>
#include <clocale>
#include <cmath>
#include <complex> //复数类
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque> //STL 双端队列容器
#include <exception> //异常处理类
#include <fstream>
#include <functional> //STL 定义运算函数(代替运算符)
#include <limits>
#include <list> //STL 线性列表容器
#include <map> //STL 映射容器
#include <iomanip>
#include <ios> //基本输入/输出支持
#include <iosfwd> //输入/输出系统使用的前置声明
#include <iostream>
#include <istream> //基本输入流
#include <ostream> //基本输出流
#include <queue> //STL 队列容器
#include <set> //STL 集合容器
#include <sstream> //基于字符串的流
#include <stack> //STL 堆栈容器
#include <stdexcept> //标准异常类
#include <streambuf> //底层输入/输出支持
#include <string> //字符串类
#include <utility> //STL 通用模板类
#include <vector> //STL 动态数组容器
#include <cwchar>
#include <cwctype>
//////////////////////////////////////////////////////////////////////////
// C99 增加
#include <complex.h> //复数处理
#include <fenv.h> //浮点环境
#include <inttypes.h> //整数格式转换
#include <stdbool.h> //布尔环境
#include <stdint.h> //整型环境
#include <tgmath.h> //通用类型数学宏
using namespace std;
// 容器
#include <vector> /** T的一维数组*/
#include <list> /** T的双向链表*/
#include <deque> /** T的双端队列*/
#include <queue> /** T的队列*/
#include <stack> /** T的堆栈*/
#include <map> /** T的关联数组*/
#include <set> /** T的集合*/
#include <bitset> /** 布尔量的集合*/
// 通用功能
#include <utility> /** 运算符和对偶*/
#include <functional> /** 函数对象*/
#include <memory> /** 容器用的分配器*/
#include <ctime> /** C风格的日期和时间*/
// 迭代器
#include <iterator> /** 迭代器和迭代器支持*/
// 算法
#include <algorithm> /** 通用算法*/
#include <cstdlib> /** bsearch(),qsort()*/
// 诊断
#include <exception> /** 异常类*/
#include <stdexcept> /** 标准异常*/
#include <cassert> /** asert宏*/
#include <cerrno> /** C风格错误处理*/
// 串
#include <string> /** T类型的串*/
#include <cctype> /** 字符分类*/
#include <cwctype> /** 宽字符分类*/
#include <cstring> /** C风格的字符串函数*/
#include <cwchar> /** C等个的宽字串函数*/
#include <cstdlib> /** C风格的串函数*/
// IO
#include <iosfwd> /** IO功能的前导声明*/
#include <iostream> /** 标准iostream对象和操作*/
#include <ios> /** iostream基类*/
#include <streambuf> /** 流缓冲区*/
#include <istream> /** 输入流模版*/
#include <ostream> /** 输出流模版*/
#include <iomanip> /** 操控符*/
#include <sstream> /** 以串作为IO对象的流*/
#include <cctype> /** 字符分类函数*/
#include <fstream> /** 以文件作为IO对象的流*/
#include <cstdio> /** printf()族IO功能*/
#include <cwchar> /** 宽字符的printf()风格IO*/
// 本地化
#include <locale> /** 表示文化差异*/
#include <clocale> /** 表示文化差异,C风格*/
// 语言支持
#include <limits> /** 数值范围*/
#include <climits> /** C风格的数值标量范围宏*/
#include <cfloat> /** C风格的浮点数值范围宏*/
#include <new> /** 动态存储分配*/
#include <typeinfo> /** 运行时类型识别支持功能*/
#include <exception> /** 异常处理支持功能*/
#include <cstddef> /** C库语言支持*/
#include <cstdarg> /** 变长函数列表参数*/
#include <csetjmp> /** C风格堆栈回退*/
#include <cstdlib> /** 程序终止*/
#include <ctime> /** 系统时钟*/
#include <csignal> /** C风格的信号处理*/
// 数值
#include <complex> /** 复述及运算*/
#include <valarray> /** 数值向量和运算*/
#include <numeric> /** 通用数值运算*/
#include <cmath> /** 标准数据函数*/
#include <cstdlib> /** C风格的随机数*/