day0
飞机很神奇地提前到了
到长沙感觉天气还不错 之前天气预报说会比四川冷其实也还好
第一次到湖南 2333心情愉悦!
觉得长沙的菜。。看起来很辣。。但是根本就不辣T_T
day1
早上吃饭的时候遇见几个重庆的。。不知道到底是妹子还是汉子的orz!感觉根本分辨不出来!
然后第一天就考试。。果断被。。。虐了。。。。。QAQ
第一题看起来就是乱搞啊但是就是不知道怎么搞。。。结果是二分图T_T当时真的全从几何角度考虑了没想到竟然是。。。图论。。。orz
第二题概率dp 出题人写的欢迎打标 = =没有python的人类啊。。。而且打表光荣搞反两个数是什么鬼啊。。。。。
第三题是裸的树剖 不过实在是各种恶心啊。。T_T我的一下午加一晚上都贡献给它了!!!!!!!7kb的代码!!!!
然后光荣爆零再加上熊哥的神补刀。。我也是。。。
今天才发现雅礼其实是个很文艺小清新的学校。。。
包括学校外面的文具店。。。这边的草稿纸摸起来真的好舒服好喜欢T_T回去的时候一定要带一摞!(……)
晚上学姐问我一道题 她说是概率水题
but 我真!的!!不!!会!!!!!桑心!!!
day2
本来以为今天不考试结果又是一套神题……
第一题以为是网络流。。结果= =就是个最短路乱搞。。。。。这样真的好吗!!!
T_T第二题概率 = = 还是个贪心。。。。突然明白zsl说的贪心很重要是什么意思。。现在都没想通那个贪心是怎么证的= =心疼啊。。。
第三题还是概率。。。。orz湖南这么喜欢概率??黑了ydc 2333 反正这题的做法也挺神的。。只能跪
一道题也没写完 = =写一半都被恶心惨……于是爆零的第二天 熊哥神补刀的第二天
昨天那道题看到代码果断懂了 = =原来概率和期望真的是一家的。。。
。。。然后语死早の我写了两篇来给学姐解释T_T。。。。。。
在雅礼实验门口竟然目睹了打架。。
orz跪求不要伤害我弱小的心灵好吗!!人生第一次目睹打架啊T_T
今天的网络好差!!!!图都传不上来!!差评!!!
明天还要考试啊 = = 祝我能不要继续零分了好吧。。。。
day3
终于不是0分了……
第一题是虚树 = = 那人讲了窝也没懂orz反正是个神奇的东西……不想说了
第二题居然是个二分图+dp。。。。我靠啊 = = 感觉完全不可做啊
第三题是乱搞。。然后就成功乱搞处了30分 = = 反正……正解也没听懂…………
中午大家一起出去吃饭 笑的整个人都不好了
ljp真的是自带各种喜感啊!!!jp学端碗 jp学夹菜系列2333
晚上去和新浪微博客服沟通了下他们说不能介入处理版权问题
orzz这种事想想就知道会很麻烦 - -
以后不要再在贴吧发图了 不过可能也没啥机会了吧 orz。。。
传不上图的日子啊。。。。。。
day4
终于不考试了。。传说中的难题选讲。。。
早上wxr将的时候听得整个人都要跪了 下午精神很不好直接回酒店了
睡了一下午还是不舒服。。。。
所以到了这里身体也还是吃不消啊T_T
好像今天讲的题还可以听。。。有空还可以写一写的样子。。。
day5
今天的题是mx大爷出的……
根本……没法做。。
第一题题面都是错的。。其实是送分题吧但是完全搞不懂他最后是个啥意思
第二题……卢卡斯定理转数位dp再转fft = =。。。只能跪跪
第三题仙人掌上dp 。。看到题我怀疑这tm真的不是vfk出的题???? = =反正最后也没听懂好吧。。。我弱啊。。。。
附赠一张毛x爷。。= =
然后我又滚回酒店颓废了。。。
不知道要怎么办了。。。难受。。。。。 orz
写了几张图后期完整个晚上也过去了。。
感觉可能我还是更擅长设计吧。。码代码什么的……
day6
vfk来讲课。。。数论入门。。。嗯。。。
其实前半部分讲的还挺容易懂的。。然后到后来又开始不舒服了。。。就没法继续听了。。
成功和vfk大大合影了orz
然后发现ioi集训队的衣服真的特别萌啊。。。。T_T思考熊还有三个泡泡。。
嗯……就是这样了……
精神很差啊。。。不舒服。。。。
day7
早上起来就头疼的快炸了。。感觉又发烧了
叫xyt帮我去买了面包和豆浆。。吃了药感觉好一些了。。。。
买了体温计……发现竟然现在水银体温计和以前不一样了。
然后出去采购东西。。本来想买外套的可是买不起…………不过买到了久违的奶酪和黄油……
下雨了 很大 声音很好听。。。 = =
身体依旧不太舒服………………
不想再继续这样下去了啊……但是还是不知道要怎么办…………
day8
今天的题是CO3同学出的。。。感觉还算温柔啊 = =
第一题是贪心。。想到了贪心没想到具体做法的跪了。。
第二题是数据结构。。水了。。。
第三题数论。。。看到直接跳过了。。。反正我也不会T_T听了讲解证明确实我也没可能会…………
竟然A了八天以来的第一道题。。。
果然还是只有数据结构题能做啊orz。。。水水的线段树感觉好温柔。。。
二十分钟写完都没debug就交了。。居然过了T_T
#include <cstdio>
#include <iostream>
using namespace std;
int read()
{
int n = 0, sign = 1; char c = getchar();
while(c < '0' || c > '9') {if(c == '-') sign = -1; c = getchar(); }
while(c >= '0' && c <= '9') { n = n*10 + c-'0'; c = getchar(); }
return n * sign;
}
const int Nmax = 100005;
const int Mmax = 100005;
int N, M;
bool is_line[Mmax];
struct line{
int l, r, h, R;
}li[Mmax];
int q[Mmax];
inline void Union(int a, int b)
{
int temp = li[a].R;
li[a].R = b; li[b].R = temp;
}
#define lc (u << 1)
#define rc (u << 1 | 1)
namespace SegmentTree{
int lazyc[4 * Nmax], lazyh[4 * Nmax];
inline void push_down(int u)
{
if (lazyh[lc] < lazyh[u])
{
lazyh[lc] = lazyh[u];
lazyc[lc] = lazyc[u];
}
if (lazyh[rc] < lazyh[u])
{
lazyh[rc] = lazyh[u];
lazyc[rc] = lazyc[u];
}
lazyh[u] = lazyc[u] = 0;
}
inline void Add(int u, int l, int r, int L, int R, int color, int high)
{
if (lazyh[u] > high) return;
if (L == l && r == R)
{
lazyc[u] = color;
lazyh[u] = high;
return;
}
int mid = (l + r) >> 1; push_down(u);
if (R <= mid) Add(lc, l, mid, L, R, color, high);
else if (L > mid) Add(rc, mid + 1, r, L, R, color, high);
else
{
Add(lc, l, mid, L, mid, color, high);
Add(rc, mid + 1, r, mid + 1, R, color, high);
}
}
inline int Query(int u, int l, int r, int pos)
{
if (l == r) return lazyc[u];
int mid = (l + r) >> 1; push_down(u);
if (pos <= mid) return Query(lc, l, mid, pos);
else return Query(rc, mid + 1, r, pos);
}
}
int main()
{
freopen("line.in", "r", stdin);
freopen("line.out", "w", stdout);
N = read(), M = read();
int cnt1 = 0, cnt2 = 0;
li[0].h = li[0].R = -1;
for (int i = 1; i <= M; ++i)
{
int sign = read();
if (sign == 1) {
is_line[i] = 1; ++cnt1;
li[cnt1].l = read(), li[cnt1].r = read(); int lower = read();
Union(lower, cnt1);
} else q[++cnt2] = read();
}
for (int i = 0, cnt = 0; ~i; i = li[i].R, ++cnt) li[i].h = cnt;
using namespace SegmentTree; cnt1 = cnt2 = 0;
for (int i = 1; i <= M; ++i)
{
if(is_line[i])
{
line temp = li[++cnt1];
Add(1, 1, N, temp.l, temp.r, cnt1, temp.h);
}
else printf("%d\n", Query(1, 1, N, q[++cnt2]));
}
return 0;
}
果断听完课就滚回酒店了了。。
然后回去写dp。。一道单调队列优化写的要死了。。。。
debug也是各种痛苦T_T没有标程的日子啊。。。。。。
然后十点多终于整完了去洗澡。。想到还有好多衣服要洗我就orz。。。
day9
居然是vfk的题。。。maya真的能做??
第一题是数据结构 不过还是写了60%就滚了 = =。。高端的玩意脑补不出来啊。。
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int read()
{
int n = 0, sign = 1; char c = getchar();
while(c < '0' || c > '9') {if(c == '-') sign = -1; c = getchar(); }
while(c >= '0' && c <= '9') { n = n*10 + c-'0'; c = getchar(); }
return n * sign;
}
void print(int x)
{
if(x < 0) { putchar('-'); x *= -1; }
if(!x) puts("0");
else {
int bit[15], len = 0;
while(x) { bit[++len] = x % 10; x /= 10; }
for(int i = len; i; --i) putchar(bit[i] + '0');
puts("");
}
}
const int Nmax = 1e5 + 5;
const int Mmax = 2 * 1e5 + 5;
int N, M;
char op[Nmax];
inline bool check(char *st)
{
for(int i = 1; st[i]; ++i) if(st[i] != '1') return false;
return true;
}
struct ed{
int u, v, w;
bool operator < (const ed &b) const
{
return w < b.w;
}
}e[Mmax];
int k = 1, ww[Mmax + Nmax];
inline void adde(int u, int v, int w) { e[k++] = (ed){ u, v, w }; }
int fa[Nmax + Mmax][20], f[Nmax + Mmax], lc[Nmax + Mmax], rc[Nmax + Mmax], dep[Nmax + Mmax];
inline int find(int x) { return x == f[x] ? x : f[x] = find(f[x]); }
void dfs(int u)
{
if(fa[u][0] != u) dep[u] = dep[fa[u][0]] + 1;
for(int i = 1; i < 20; ++i) fa[u][i] = fa[fa[u][i - 1]][i - 1];
if(lc[u]) dfs(lc[u]); if(rc[u]) dfs(rc[u]);
}
int lca(int u, int v)
{
if(dep[u] < dep[v]) swap(u, v);
int kk = dep[u] - dep[v];
for(int i = 0; i < 20; ++i) if((1 << i) & kk) u = fa[u][i];
if(u == v) return u;
for(int i = 20 - 1; ~i; --i) if(fa[u][i] != fa[v][i])
{ u = fa[u][i]; v = fa[v][i]; }
return fa[u][0];
}
int main()
{
freopen("travel.in", "r", stdin);
freopen("travel.out", "w", stdout);
N = read(); M = read();
scanf("%s", op + 1);
if (!check(op)) {
int map[105][105]; memset(map, 0x3f, sizeof(map));
while (M--)
{
int u = read(), v = read(), w = read();
if(map[u][v] > w) map[u][v] = map[v][u] = w;
}
for(int k = 1; k <= N; ++k)
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= N; ++j) if(i ^ j)
map[i][j] = min(map[i][j], map[i][k] + map[k][j]);
for(int i = 1; i <= N; ++i) if(op[i] == '1')
for(int j = i + 1; j <= N; ++j) if(op[j] == '1' && (map[i][j] ^ 1061109567))
adde(i, j, map[i][j]);
} else {
while (M--)
{
int u = read(), v = read(), w = read();
adde(u, v, w);
}
}
sort(e + 1, e + k); int tot = N;
for(int i = 1; i <= N + k; ++i) f[i] = fa[i][0] = i;
for(int i = 1; i < k; ++i)
{
int u = e[i].u, v = e[i].v;
int fu = find(u), fv = find(v);
if(fu == fv) continue;
f[fu] = f[fv] = fa[fu][0] = fa[fv][0] = ++tot;
ww[tot] = e[i].w; lc[tot] = fu; rc[tot] = fv;
}
dep[tot] = 0; dfs(tot);
for(int Q = read(); Q--; )
{
int u = read(), v = read();
print(ww[lca(u, v)]);
}
return 0;
}
第二题是数学。。第三题类似构造。。。。看了题挣扎了一下还是没写。。。。
然后继续写dp菌。。。。写的不能再痛苦啊。。。。T_T
今天长沙温度能有30了吧。。。这才三月啊!!!!!!!!!
下午听讲题也还是没怎么听懂。。。orz还是自己玩吧。。。
day10
早上起来精神很差。。昨晚睡得实在太晚了。。。。
写AC机写了一半不想写了睡觉去了。。第二题第三题看都没有看。。。。 = =
然后下午果断呆在酒店睡觉了。。其实也没睡多久T_T
然后写了会代码居然就晚上了。。。。发现现在好多东西又都忘掉了。。
比如ac机。。强连通。。。lca什么的。。。都不熟了T_T
还有17天就要省选了啊 我还是什么都做不来 要死啊。。。。
听说明天要下雨。。嗯。。。 = =终于可以凉快一点了
day11
12号才能回去。。好想早点回去啊orz
果然难题选讲又成了自己各种水。。真的好浪费时间啊= =
_(:з)∠)_交互式题目看起来好好玩。。但是自己写的话会很恶心的吧 orz还有动态网络流。。。我也是。。。。
T_T晚上果然就又没有去吃饭。。。但是没有吃的了。。。饿的一比啊。。
感觉macOSX和iOS的互联还是做得蛮好的
把ppt们全都导入手机了233 不过估计有空看的机会也很少了。。。
day15
好多天没记了。。因为日子过得太非人哉了。。。基本都是睡过去的。。可是精神还是差
今天下雨了听说明天4到9度。。。。冻死的节奏啊……
_(:з)∠)_ydc大爷出了三道dp。。然后又成功爆零了。。。。。唉。。。。我说点啥好。。。。
明明之前有写很多dp 可是看到题还是不怎么会往dp上想_(:з)∠)_这是一种病吗。。得治啊。。。。
熊哥说如果状态好一点省队肯定是很简单的。。但是真的现在我这状态啊。。。
好想哭。。T_T毕竟还是弱啊。。。
周六就回绵阳了……可以去找尧尧玩了……
嗯…………在这里呆了这么久居然没有出去玩_(:з)∠)_....