仅仅只是存一下模板.
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <ctime>
#include <cctype>
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <map>
#include <set>
using namespace std;
#define szof(x) ((int)(x).size())
#define mset multiset
#define setit(T) set<T>::iterator
#define msetit(T) mset<T>::iterator
#define mapit(T1,T2) map<T1,T2>::iterator
#define debug(x) cout<<#x<<" : "<<x<<endl
#define Rd(x) {x=0;bool f=false;char c;while (c=getchar(),!isdigit(c)&&c!='-');if (c=='-') f=true,c=getchar();do x=(x<<1)+(x<<3)+(c^48);while (c=getchar(),isdigit(c));if (f) x=-x;}
template <class T>
void put(T x) {
if (x==0) return;
put(x/10);
putchar(x%10^48);
}
template <class T>
void print(T x) {
if (x==0) putchar(48);
else {
if (x<0) putchar('-'),x=-x;
put(x);
}
}
#define brk putchar(' ')
#define edl putchar('\n')
typedef long long longl;
const int inf=1<<28;
const long long INF=1LL<<60;
template <class T1,class T2>
void Max(T1 &x,const T2 &k) {
if (x<k) x=k;
}
template <class T1,class T2>
void Min(T1 &x,const T2 &k) {
if (x>k) x=k;
}
没什么东西,以后再搞吧