2026 信友队冬令营总结
为期一周的冬令营开始啦!
前言(作业)
好像只剩下两本书要看了。《钢铁是怎样炼成的》和《骆驼祥子》。
Feb. 22nd
报道日。昨天从西店去桐庐玩,今天才回来,到家洗个澡就来报到啦!
宿舍有点一言难尽。算了不说了。
\(9:00\) 下课 \(10:00\) 熄灯。
\(12:00\) 还没睡着,风刮着窗户吱吱响,精神几乎崩溃。猛然想起下午喝过咖啡,好多了。
Feb. 23rd
第一天!\(6:30\) 起床。早饭好好吃。
学习了高维数据结构。终于又可以高强度刷题了。
午饭不好吃。午睡看书。下午补题。\(\color {red}{AK}\) 了,面基了夏令营的同学和学校同学。隐隐感觉只会有一次模考。
户外活动,无聊。
晚饭好好吃。晚自习可以看书。计划每天 \(100\) 页。
成功用 qq 和妈妈取得了联系。
Feb. 24th
下雨了。\(7:30\) 被宿管叫醒了。侥幸没有迟到。
早饭依旧好好吃,早自习依旧看书。树上的数据结构。
午饭好了一点,感觉有人投诉了。午睡看书。下午洛谷比赛,DBOI \(rk17\),等待等级分大涨。没有户外活动,下雨了。
晚上不想补题,看书吧。
回寝室打牌,惊奇的发现斗地主不是四个人而是三个人!
Feb. 25th
没有下雨,于是 \(6:30\) 起床看书。抓紧每一分每一秒。
接下来不说日常生活了。说说重要的事。
学了非传统题,不能编译运行何意味?但是非常的开心,因为过了很多题。昨天比赛场切蓝??
下午又比赛了,Div 2 月赛 \(rk72\),等级分会升还是降?决定接下来就打一场 link 其他的比赛都不打了。
没下雨,体育锻炼。
晚上依旧打牌,还有物资加持,爽!
看完了《钢铁是怎样炼成的》。剩下 \(180\) 页的《骆驼祥子》。
Feb. 26th
下雨,雨挺大。睡觉也就起晚了。被宿管按时叫起来,冲去食堂。
学了博弈论,三黑?一堆紫?不说爽还能说什么?
\(17:00\) 之前把三道黑过了,只剩下一道紫了。
做题期间,我同桌 yushuai04118 同志不知道为啥突然发飙,直接把水杯里的水倒电脑上了,还溅到我电脑上,迷惑行为。
活动取消,依旧下雨。下雨的频率太高了吧。
\(17:25\) \(\color{red}{AK}\) 了。
晚上依旧看书,离放学还剩大概一刻钟时飞奔回寝室,在厕所排放。然后由于拉了 \(3\) 天的量,直接导致厕所堵塞。自闭了。
彩蛋:link。
Feb. 27th
好像明天的比赛打不了了,原因是明天有统考。具体等时间。
早上 \(6:50\) 醒了又睡了,\(7:10\) 起床看书,\(15\) 页。
薅了许多的早饭当零食。
学了随机化问题,三紫四蓝,还可以。模拟退火终于来了。
中午成功看完《骆驼祥子》。解放了。
也是在入门赛前 \(\color{red}{AK}\) 了。为了弥补明天的比赛,打算用大号打入门赛防止掉咕值。第一次 \(\color{red}{AK}\) 入门赛。用了 \(1\) 小时不到。相信下次可以更快。
开始摆。加了 Amazing Luogu v0.8.6 插件,非常的好。
今天目标完成:
- green problem 180
- blue problem 130
- purple problem 60
- black problem 10
晚上打德州扑克,没有被宿管发现,惊心动魄。
Feb. 28th
最后一天还要讲题?不是统考吗?
学了不久之前学过的网络流和图上匹配问题。下午要统考,祝我 while(1) rp++;。
中午没有回寝室,直接去考试了。结果:考砸了,第一题别人 \(5\min\) 秒了我做了 \(5\text h\) 还不会然而一听思路竟然如此简单!我甚至把博弈论套上了 \(SG\) 函数,结果竟然是————毫无用处?
心态崩溃,导致我第二题疑似假了。剩下也没什么
好说的了。
\(0+50+40+0=90\)。没挂。
第一题是原题(green)
problem。最优解是 \(O(n)\) 的,可见原题题解。这里的是 \(O(n\log n)\),也可以通过。
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,ans;
struct node{
int cha,x,y;
friend bool operator < (node x,node y){return x.cha<y.cha;}
};
priority_queue <node> q;
signed main(){
scanf("%lld",&n);
for(int i=1,x,y;i<=n;i++){
scanf("%lld%lld",&x,&y);
q.push({x-y,x,y});
}
for(int i=1;i<=n;i++){
node u=q.top();q.pop();
q.push({-u.cha,u.y,u.x});
ans+=q.top().x;q.pop();
}
printf("%lld",ans);
return 0;
}
第二题是原题(blue)
problem,很神秘的换根 \(\text{dp}\),想到树的直径上去了。全偏了。正解代码如下:
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5+5;
int n,dp[N],f[N],sz[N],ans=LLONG_MAX;
vector <int> g[N];
void dfs1(int u,int fa){
sz[u]=1;
for(auto v:g[u]) if(v!=fa) dfs1(v,u),f[u]+=f[v]+sz[v]*(2*sz[u]-1),sz[u]+=sz[v];
}
void dfs2(int u,int fa){
for(auto v:g[u]){
if(v==fa) continue;
dp[v]=dp[u]-n+2*sz[v];
ans=min(ans,dp[v]),dfs2(v,u);
}
}
signed main(){
scanf("%lld",&n);
for(int i=1,u,v;i<n;i++){
scanf("%lld%lld",&u,&v);
g[u].push_back(v);
g[v].push_back(u);
}
dfs1(1,0);dp[1]=ans=f[1];dfs2(1,0);
printf("%lld",ans);
return 0;
}
其他两题不会,不写了。
晚上继续打了德州扑克,并整理的行李。
Mar. 1st
把行李拖到寄物处,然后去教室。学习往年考试题的解法。
突然发现"拉格朗日插值法"可以非常好的匹配成我的昵称,原因是插值法。
做题到中午。下午是结营仪式。我好像是优秀学员唉。上台领奖紧张怎么办。
突然发现一共 \(7\) 天的集训只有 \(3\) 天活动。
回家,下雨,难受,累。
结束。

浙公网安备 33010602011771号