万万没想到。
今天依旧是一言难尽的一天;今天还是心情复杂的一天。
1011
这道签到题,学妹开始非常准确的找到了对应的原题(POJ 3255)。然鹅,开始用了dijkstra的板子结果TLE,后来换了SPFA的,AC。
1010
刚开始做法是按照s排序,对于每一个新的test找离它的s最近的e,将这个test加入那个room。然鹅,TLE。后来将s,e都作为点来排序,解决了每次要使用upper_found()的问题。再加上讨论版里大家的血泪教训,又加了个Fast I/O 以防万一。然后500ms终于AC了。
1008
鉴于讨论版里的血与泪,上来就先贴了个fast I/O的板子。其实对于这道题的解题思路是没有问题的,就是在树上找两两一组的点对 。然鹅,搜索写搓了。开始还以为是输入挂不够强劲,又扒了第一场1012的北航的输入挂。emmmmm,但是并没有什么卵用,还是搜索没写好,无限TLE。
总结
收获一
本场比赛第一个收获,感谢出题方,让我们有机会场上整理了fast I/O 板子,临场学习了 fread。
namespace fastIO {
#define BUF_SIZE 100000
//fread -> read
bool IOerror = 0;
inline char nc() {
static char buf[BUF_SIZE], *p1 = buf + BUF_SIZE, *pend = buf + BUF_SIZE;
if(p1 == pend) { p1 = buf; pend = buf + fread(buf, 1, BUF_SIZE, stdin);
if(pend == p1) { IOerror = 1;
return -1;
}
}
return *p1++;
}
inline bool blank(char ch) {
return ch == ' ' || ch == '\n' || ch == '\r' || ch == '\t';
}
inline void read(int &x) {
char ch;
while(blank(ch = nc()));
if(IOerror)
return;
for(x = ch - '0'; (ch = nc()) >= '0' && ch <= '9'; x = x * 10 + ch - '0');
}
#undef BUF_SIZE
};
using namespace fastIO;
收获二
为什么要穿原谅绿的衣服来打比赛啊啊,这分明就是TLE绿啊,整场无限超时。下次要穿AC红。
Update:
1008题不是搜索写搓了。是vector没有清空。。。。经验++;