T1 IOI 2009 小熊
没有在实现中注意题目里的条件(蜂蜜不能经过喜欢吃蜜蜂的小熊的家)。
T2 IOI 2010 生活品质
这就比较尴尬了:没想到怎么写=。=
这个 DZY Love Sorting里用过的套路没想起来非常尴尬。
简单地说就是用01序列代替复杂的排列简化判定条件。
具体二分的时候感觉到是在二分一个可行范围。
T3 IOI 2009 旅行商
常规线段树优化dp。
不过还是切分提示的好。
bblss123神犇可以用spfa虐个15分。
FastInput by bblss123
char buf[M*8],*p;
inline void rd(int &a){
for(++p;*p<=32;++p);
for(a=0;47<*p;++p)a=a*10+(*p^48);
}
int main(){
p=buf-1;
fread(buf,1,M*M*8,stdin);
....
}
Templet by ShinFeb
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
#include <cmath>
#include <cctype>
#include <cassert>
#include <ctime>
#include <cstdlib>
#include <queue>
#include <set>
#include <bitset>
#include <stack>
//long long,memory,freopen
using namespace std;
#define rep(i,s,t) for(register int i=s,t_=t;i<t_;i++)
#define per(i,s,t) for(register int i=(t)-1,s_=s;i>=s_;i--)
#define prt(x) cout<<#x<<":"<<x<<" "
#define prtn(x) cout<<#x<<":"<<x<<endl
#define shut assert(0)
#define when printf("%.2f\n",1.0*clock()/CLOCKS_PER_SEC)
#define sqr(x) ((x)*(x))
#define inf (1<<30)
#define INF (1ll<<62)
typedef long long ll;
typedef double db;
struct ii
{
int x,y;
ii(int x=0,int y=0):x(x),y(y){}
inline bool operator<(const ii &a)const{return (x==a.x&&y<a.y)||x<a.x;}
ii operator+(const ii &a)const{return ii(x+a.x,y+a.y);}
};
template<class v>void sc(v &x)
{
char c;x=0;int f=1;
while(c=getchar(),c<48)if(c=='-')f=-1;
do x=x*10+(c^48);
while(c=getchar(),c>47);
x*=f;
}
template<class v>void nt(v x)
{
if(!x)return;
nt(x/10);putchar('0'+x%10);
}
template<class v>void pt(v x)
{
if(x<0)putchar('-'),x=-x;
if(!x)putchar('0');
else nt(x);
}
template<class v>void ptn(v x)
{
pt(x);putchar('\n');
}
template<class v>void pts(v x)
{
pt(x);putchar(' ');
}
template<class v>void pp(v x,int f)
{
static char ch[]={" \n "};
pt(x);putchar(ch[f]);
}
template<class v>inline void Max(v &x,v y){if(x<y)x=y;}
template<class v>inline void Min(v &x,v y){if(x>y)x=y;}
int main()
{
// freopen("pro.in","r",stdin);
// freopen("chk.out","w",stdout);
return 0;
}