对!不!起!我!拖!更!我!有!罪!
Day -INF
双报。
报名缴费,当然不是同一天。
whk 特别烦,初二不 OI ,初三就裂开。
初赛过不去,退役啦,就这样呢。
初赛
9月18日 Day -1 星期六
whk? 不可能的。政治老师叫我们中秋复习第一课,但是我就是玩,带都没带回来。
晚上看了 yxc 的初赛讲解。
rp++!
9月19日 Day 0 星期日
7:00 起床
出发遇到了 GHJ(虽然同一个小学但是他好像不认识我)。
在去的路上复习了下自己以前错过的点。
S组
到考场才 8:30 左右,金中爷们已经来了很多了,在门口遇到了浩宇爷。
门口的老师提示考场是可以先进去的,此时 lxq 还没来。我问了下没准考证(在 lxq 那)可以进吗。凑巧她就来了,于是我就提交资料(绿码彩印、知情同意书、核酸检测报告)先进去了。
进去之后要过一个测温通道,在体育馆里面,人家龙实还有体育馆啊,金实你看看你。
甚至免洗洗手液还是自动的。
到了休息的地方,在操场旁的公告栏上确认了座位,同试室有很多人认识。
当时休息的地方只有我一个js,ls大佬们在努力复习,还有一群穿白底有一条红色一条黑色条纹的考生,不知道是哪个学校的。
对了还有 wjd 哥哥。
几分钟之后 xgf 哥哥来了,顺便找 lxq 拿了准考证。本来说老师是不能进的,今天又可以了, ccf 老出尔反尔了。
大家都来了。
进考场。
CCF 真是太逊了,准考证知情同意书还有两个错误。
填签到表的时候差点填少前面一个 $0$ ,前面那个潮实的没填我也跟着带跑,过了三秒发现不对跟监考老师要回来补上了。
考试过了半小时我的选择才做到T13,还有蒙的。
意识到不能这样搞,不会的随便蒙完先跳过了。
我写游记的时候才发现二叉树高度自己犯了 sb 错。
阅读程序就是鬼,第一个就来个计算几何,靠经验从选项里看出是个求球体体积交。
问题是看出来也不会。我连个常数都不知道有啥用( $-0.5$ 的反余弦值)。
第三题 base 编码解码恶心位运算,听都没听说过,出考场才从神仙们口中得知。
由于基本不会所以蒙得很快,反正剩了足够的时间给完善程序,具体我也记不清了。
出的什么垃圾题,对答案发现题目里给了完全没用的东西,问题是我考场以为那玩意很重要还因此挂了 3pts 。
后面的四毛子算法更别说了,笛卡尔树加分块,讲了一堆对我来说半点用没有。
弄完还剩点时间,把前面几道蒙的选择确定了下来。准备以选择题作为老本。
垃圾答题卡修改下答案能把墨蹭掉。
心态还是很稳的,不像去年太慌了,比赛经验真的很重要啊。
这里原来有个小彩蛋,应 xgf 哥哥要求删去了。
广播里没说要收试卷就没抄答案,最后却收了,搞得我很尴尬。
和 wt 手势交流了一下,果然大家都是期望得分 $25$ 呢(其实严格来说应该不是 $25$
瞟到 yxy 的草稿纸上空无一物,这就是神吗,她在发卷前和交卷后还虔诚地祈祷(后来知道她好像考的不太好,不过过线应该是没问题的。
出考场遇到 xtx 和 lxz ,由于 ls 不能午休就回去了。
到家凭记忆对了下答案,估分 $62$ 左右,理论上能过?
J组
下午和 chq 大佬一起去了考场,下午的人明显比早上多。我们到那里还要排队, 这时 wt 也来了。
xrc 好像早就到了。
流程没啥区别。只不过下午广播变成直接念,试卷发下来前面做得还是很顺利的,有道平均分组卡了一下,总体没啥问题。后来对答案还是有点 sb 错误。
阅读程序T1大水题,求一个数的 lowbit + 二进制表示下有多少个 $1$ 。
第二题,怎么又是你!!!
直接开蒙,我中午对答案为啥不把答案记一下啊啊啊啊啊。
后面那题计算量有点恶心,我没算,看出个欧拉筛,但是垃圾变量名 abcdfg
比较劝退。用常识判断勉强做完了。最后一个选择蒙对了,因为 C 的数字比较眼熟。
做完剩下半小时,有点想上厕所,但是懒得去了。检查了全卷,基本没啥问题。
答题卡发下来,老师检查的时候发现我没勾语言,老师人真是太负责了,不然我应该没了。
早上记得为啥下午会忘啊。
到现在不明白知情同意书那个玩意为啥要涂,上午看到其他人在涂就迷迷糊糊跟着涂了,下午没涂被监考老师抓着涂了。
后来出考场 wt 说他推出来阅读第三应该是跟因数有关。
这次把答案记下来了,回去一对答案 base 那道全错,甚至大家交流的比较肯定的都挂了。
估分 $79$ , gf 哥哥说稳过。
从 xrc 姐姐空间弄来的图。
ls 几个认识的蒙了很多分好像。
顺便去修了书包,老手艺人真的很难找了啊,以后买书包直接去那里就好了。
回家看了会儿综艺,晚上本来要把游记更出来但是咕了。
总结 & 反思
- 不太会做先跳过,后面再回来
- 有些东西一起看很复杂,可以试试分开看
- 比较水的建议再确定一下,防止自己出现啥想太快就把一些东西忽略的情况
- 由于自己没有普及了所以没啥用,上午的题会跟下午有部分相似
后记。
9月20日 Day 0+1 星期一
早上你谷有普及膜你赛,前两题比较容易,后面想不出来。T3感觉挖到了一点性质,但是挖不下去了。
对昨天的 base 那题复杂度有疑问,跟豪哥交流了一下以为要咸鱼翻身结果我致远星了, string
类 size()
函数在 C++11 以后已经是 $O(1)$ 复杂度了。
膜你赛 100+100+10+0 rk95 。
淦发现普及算少了一道判断, $79 \to 77$ 。
写作业去了,乖乖等分数线吧。
我现在才知道S组阅读第二题是最大子段和。
9月27日 Day 0+8 星期一
今天是通知的发成绩日,昨天看到很多省份都发了,搞得我竟然对广东抱了点希望,显然没出。
今天去查分,发现广东又咕咕了。
从同学口中知道竟然有家书店叫西西弗!为啥取这么晦气的名字
晚上从 xgf giegie 那里和 luogu 上得知广东在核算成绩,明天发。
但是从后来的结果看还是有错, GD 真是太逊了。
据小道消息称, GD 分数线 J62.5 S52。
不是说去年被罚钱为啥今年还敢拖啊。
9月28日 Day 0+9 星期二
早上去大课间找 lxq 没找到。
中午吃完饭遇到 ldm ,他跟我说我两个组别都过了,脸绿哥没过J组。
好耶!!1
顺便找了 chq 一起去找 lxq 。
大课间出分,那时 lxq 在开会。分数线与传闻无差,今年还是各地市分数线不同不是说全省划线吗。
看了下情况, J组共 12 人晋级,S组共 4 人晋级。其中有 3 人双报。
离谱的是ln去年过了今年没过。
我的情况。J与估分无差, $77$ ; S一下废了 4pts , $58$ 。不过能过就好了。
下午被 whk 压榨。
好像有几个分数有问题的,不过对我应该没啥影响。
10月1日 Day 0+12 星期五
昨天把东西全清回家,重得不行。
各科老师都说要早起复习。
可能吗?好不容易有个国庆假期6天都用来复习这个没啥用的一阶考试简直是脑子有问题。如果你真的这样就完全被学校带节奏了。我是不可能这样干的,之前就曾经累出过身体问题,身体才最重要啊。况且我还要备赛。
也希望膝盖的伤快点好,可能脚踝也有点扭伤,先休息几天再说。
补了个好觉。
早上抄了数学和化学的答案,作业弄完了。
整理资料。然后就补游记到现在,下午还有月赛,弄完做一下 PPT 。这是干嘛的后面会写。
计划大概是起码 OI 到明天,然后再来看要复习的多不多,毕竟初三老师们抓得紧,我主要怕被罚写检讨啥的,太浪费时间了。
ls 那边6人,大部蒙过S而不过J,希望他们好好发挥。
关于初赛的评奖,J 1= S 2=。我想要电子稿,但是 CCF 系统没弄好。
10月8日 关于国庆假期的一些事还有一阶考试
2号晚到3号早看了英语、化学、物理、数学四科。
国庆期间有两场牛客网的膜你赛,但是由于时间过于尴尬打算10月10日 vp 一场。
留三天复习,10月6日那天复习的效率最高。没复习完。
考前优良传统:转发 wt 哥哥。
语文和英语非常恶心,政治因为没背完所以也非常恶心。数学还挂了 4pts 。
复赛
后来觉得比赛第一天还是记为 Day1 比较好。下面就这么记了。
10月21日 Day -1 星期四
在学校请第三方机构做了核酸。
得知翘了节化学实验课但是不慌。好歹逃过了语文周测和政治默写。
下午的天白得纯净,仿佛雪地在头顶上,人倒走在天上了。
本想晚上打完今天的 whk ,结果忘记行李箱密码了。
我很着急,不想破坏它,但形势所迫我爸就直接把它造了。
爸那天就这么把锁打开了。
就这样 whk 碰都没碰。
洗澡时的雾气蒸腾了疲倦,这是在前几天被 whk 压榨后难得的放松。
10月22日 Day 0 星期五
早上睡醒就没啥食欲,昏昏沉沉的,背了个历史。
买了 mian 包,第二个到车站。
clj 竟然早上还去上了两节课。
车上 vp 了下计蒜客 pj3 ,很好 A 就不会。
颓了会儿游戏。
到酒店还等了两班电梯才上了楼。
酒店厕所有毛玻璃但是约等于透明。
大家基本都在颓废,我因为太菜就补了个化学作业。
晚上去吃真功夫,店员关系不好,东西坑钱。
吃饭后姚姥讲了下字符串的问题。
才知道 C14 不让用 puts
了。
这里抄一段 喝咖啡 的游记。
还有个宾馆,上面的最大公约数实际上就是 GCD 的横幅,还有个省公安厅。
回来的时候去买了大瓶矿泉水和薄荷糖,可以提神用。来广州之前还买了软糖,想着想不出题的时候可以嚼一下。
回去看了点板子,但是还是有一堆没复习到。
9:20 睡觉。
10月23日 Day 1 星期六
凌晨 4:50 起了就离谱,顺道上了个厕所。
5:45 大家都起了弄完 6:30 去麦当劳吃早餐。
离谱啊,路上一栋建筑物完美形容了这一景象。
然后就只能在旁边的全家吃了个早餐。
里面看到了个 vector
。
一般吧,吃到差不多都已经冷了。吃完感觉奇怪,可能是早上起来的时候喝了冷水的原因。
也没啥大影响。
到考场,昨天来的时候说是只有一个门,今天又说从另一个门进。
好冷啊。
进考场说连水都不让带,什么垃圾。
本来我想问题是经常喝水的现在喝个水还要举手去喝。赛时只喝了两次。
考场有人没开考就动电脑了。
开题,机房没上次 CSP 吵,好事啊。不过依然是 win7 。
A推了下结论觉得是对的,B一看有O2就觉得均摊下能过。
打了个 $O(n\log n)$ 修改 $O(1)$ 询问算了下复杂度 $5e8$ 觉得吸氧加 CCF 少爷机能跑过就没管了。
C大模拟先放着不敢动,看D。
D显然把块搞出来,然后一个一个删,空块跳过,记录下上次的颜色。复杂度 $O(n)$
突然觉得直接 vector
一个一个填就好了,结果样例都没过,原因是忽略了连成一块的情况。
然后想打链表,打着打着脑抽觉得不用链表就直接搞了。
打完去写了C的性质1,这部分很容易,上 map
查就行。写完发现还有 1h ,同考场来自 cs 的 吴彬 神竟然开始对拍了。我觉得 ABD 都能拍,但是因为系统问题对比不太方,最后选择调大模拟。
赛时代码,顺序ABCD。
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cstdlib>
using namespace std;
int main()
{
freopen("candy.in","r",stdin); freopen("candy.out","w",stdout);
int l,r,n;
scanf("%d%d%d",&n,&l,&r);
int ans=max(l%n,r%n);
int a=l/n*n;
if(a+n-1 <= r) ans=max(ans,n-1);
printf("%d",ans);
fclose(stdin); fclose(stdout);
return 0;
}
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <map>
using namespace std;
const int N=8e3+10;
int pos[N];
struct node
{
int val,id;
bool operator <(const node &x)
{
if(val == x.val) return id < x.id;
return val < x.val;
}
} a[N],b[N];
int main()
{
freopen("sort.in","r",stdin); freopen("sort.out","w",stdout);
int n,q;
scanf("%d%d",&n,&q);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i].val);
a[i].id=b[i].id=i; b[i].val=a[i].val;
}
sort(b+1,b+1+n);
for(int i=1;i<=n;i++) pos[b[i].id]=i;
int op,x,v;
while(q--)
{
scanf("%d%d",&op,&x);
if(op == 1)
{
scanf("%d",&v);
a[x].val=v;
for(int i=1;i<=n;i++)
{
b[i].val=a[i].val;
b[i].id=a[i].id;
}
sort(b+1,b+1+n);
for(int i=1;i<=n;i++) pos[b[i].id]=i;
}
else printf("%d\n",pos[x]);
}
fclose(stdin); fclose(stdout);
return 0;
}
//性质1
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <map>
using namespace std;
map <string,int> fuwu;
char op[20];
string s;
bool check()
{
//1
int cnt1=0,cnt2=0,n=s.size();
if(n < 9) return false;
for(int i=0;i<n;i++)
{
if(s[i] == ':' && cnt1 < 3) return false;
if(s[i] == '.')
{
if(cnt1 >= 3 || i == 0 || i == n-1 || (s[i-1] > '9' || s[i-1] < '0') || (s[i+1] < '0' || s[i+1] > '9'))
return false;
cnt1++;
}
if(s[i] == ':')
{
if(cnt2 || cnt1^3 || i == n-1 || (s[i-1] > '9' || s[i-1] < '0') || (s[i+1] < '0' || s[i+1] > '9')) return false;
cnt2++;
}
}
// printf("ababababba\n");
//2
int x,j=0;
for(int i=0;i<4;i++)
{
x=0;
while(j < n && (s[j] < '0' || s[j] > '9')) j++;
while(j < n && s[j] >= '0' && s[j] <= '9')
{
x=x*10+(s[j]-'0');
j++;
if(x > 255 || x < 0) return false;
}
}
// printf("ababababba\n");
x=0;
while(j < n && (s[j] < '0' || s[j] > '9')) j++;
while(j < n && s[j] >= '0' && s[j] <= '9')
{
x=x*10+s[j]-'0';
j++;
if(x > 65535 || x < 0) return false;
}
//3
for(int i=0;i<n;i++)
{
if(s[i] == '0')
{
if(i == 0)
{
if(s[i+1] >= '0' && s[i+1] <= '9') return false;
}
else if(i != n-1)
{
if((s[i-1] < '0' || s[i-1] > '9') && (s[i+1] >= '0' && s[i+1] <= '9')) return false;
}
}
}
return true;
}
int main()
{
freopen("network.in","r",stdin); freopen("network.out","w",stdout);
int n;
scanf("%d",&n);
// printf("%d\n",n);
for(int i=1;i<=n;i++)
{
scanf(" %s",op);
cin >> s;
// printf("%s ",op);
// cout << s << endl;
if(!check()) {printf("ERR\n"); continue;}
if(op[0] == 'S')
{
if(fuwu.count(s)) printf("FAIL\n");
else {fuwu[s]=i; printf("OK\n");}
//ERR
}
else
{
if(fuwu.count(s)) printf("%d\n",fuwu[s]);
else printf("FAIL\n");
//ERR
}
}
fclose(stdin); fclose(stdout);
return 0;
}
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <vector>
using namespace std;
const int N=2e5+10;
bool used[N];
int a[N],l[N],r[N],tot=1;
vector <int> p[N];
int main()
{
freopen("fruit.in","r",stdin); freopen("fruit.out","w",stdout);
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
l[1]=1;
for(int i=2;i<=n;i++)
if(a[i]^a[i-1]) {r[tot]=i-1; l[++tot]=i;}
r[tot]=n;
// for(int i=1;i<=tot;i++) printf("%d %d\n",l[i],r[i]);
int cnt=0,m=0;
while(cnt < tot)
{
m++;
for(int i=1,Lst=-1;i<=tot;i++)
if(!used[i])
{
if(a[l[i]] != Lst) {p[m].push_back(l[i]); Lst=a[l[i]]; l[i]++;}
if(l[i] > r[i]) {used[i]=true; cnt++;}
}
int x=p[m].size();
for(int i=0;i<x;i++) printf("%d ",p[m][i]);
printf("\n");
}
fclose(stdin); fclose(stdout);
return 0;
}
弄完也没时间拍了,检查下觉得没啥问题。
中午出来吃了个牛腩粉,回酒店休息了大概 20min。
吃饭的时候还听见有人B树套树、平衡树。
在快要睡着,刚刚开始做梦的时候闹钟就响了,差点没把我送走。
去考场,lxq吃饭的时候跟我们说要拍照,但是我们到考场的时候完全没人,我们就进去了,走没几步就看见他们在门外。
拍完照 wt giegie 让我们加油。谢谢 giegie!
面到了 zjy ,希望能加rp吧。
换到了六楼的考场3,有win10但是Ctrl+W快捷键会出来司马极域课堂,搞得很难受。
大致看了一下题,第一印象 A 贪心 B DP C 构造或者性质 D 不懂。
A一开始觉得能做,结果样例都过不了。发现假了马上看后面。大概过了 1.5h 。
B有个部分分但是我不会。于是B怒交随机数。
C有个 $2^n$ ,打完看D好像也有个 $2^n$ 但是太麻烦了。
最后A还是不会,交了个能过两个样例的版本。
退役了,出来大家都能打到50~60,只有我爆0。
tg得分点只有C的暴力。
CCF不让带水的后果,这玩意现在还在我家里。
回房间叫了个外卖,感觉广州肠粉不如汕头,应该是我吃惯了汕头的吧。
由于 JZ 没回来所以 gf 哥哥在我们房间。
wzm王老师在颓废,没有自测,但是他一直说他tg爆炸,这显然在fake。
xgf 就在里面大喊大叫,内容包括fake和反对王老师fake。
和 xgf 哥哥贴贴了。
躺平。
xgf 后来出去了下,反手给我们转了pj的代码。
自测pj luogu 100+76+100+70,计蒜客 100+52+100+100
惨案。
sb才想起来D复杂度假了, xrc 写了个B更优的解法orz。
到手的AK飞了。
后来tg组也发了,我爆0。
真的。
如果能把J组的分分30分给S组,那么我这波叫我也不知道叫啥。
晚上 xgf 没房卡,很晚才回房间,王老师喊睡觉几次了,抱歉打扰王老师睡觉。
我也想早睡的,结果到了大概 11:30 才睡。
原计划是晚上写游记在动车上whk,结果啥事没干。
睡觉。即将入睡之时感到好像有什么东西束缚着我的脸,熟悉又怪异,仿佛口罩长在了我脸上。
下意识摸了摸,却什么也没有。
迷茫。
10月24日 Day 1+1 星期日
大概睡了 7.5h ,起来整理行李。跟同宿舍的 xrc 和 wzm 去麦当劳吃了个早饭。麦当劳早饭约等于把汉堡拆出来。
回来的路上王老师颓废,我在写游记, xrc 在打音游。
行李箱把疲惫的我从广州拉了回来。
广州,那个承载希望,快乐,拼搏,兴奋,紧张,失落,烦闷,无助的地方。在这里,我留下了脚步,留下了笑声,留下了叹气,留下了青春,留下了只属于我,只属于我们的回忆。
感谢这里带给我这么多“少年不识愁滋味”的思绪。
在程序员节就这么退役了,讽刺,但也无可奈何。
10月25日 Day 1+2 星期一
小图灵的tg也出了,果然还是爆0了吗。
我到底在期待什么,每次都是毫无疑问的0分,我丝毫不感到惊讶。
已经接受可悲的现实,但是心中又好像一直满怀期待。
矛盾就是这么自然地发生在我身上。
各大 OJ 一次又一次地告诉我没希望了。但是不论最后是什么结果,狼狈退役也好,我已经做好准备了。
也许是时候回归 whk 生活。不过我始终相信,如果瞄准月亮,迷失也落在星辰之间。
突然想起 Counting Stars 的歌词。感觉很符合我这段时间的模样。
Lately, I’ve been, I’ve been losing sleep.
Dreaming about the things that we could be.
I’ve been praying hard.
I don’t think the world is sold 坚信这个世界美好如初
I’m just doing what we’re told 我只是循规蹈矩地生活着
I feel something so right 惯于离经叛道中
Doing the wrong thing 体味心安理得
I feel something so wrong 亦于按部就班中
Doing the right thing 痛感乏善可陈
I could lie, could lie, could lie 我欺骗过 伪装过 失真过
Everything that kills me makes me feel alive 但置我于死地者 必将赐我以后生
还是很难相信自己退役了。
10月27日 Day 1+4 星期三
测了下 LOJ 的数据,竟然还有三十分。
10月28日 Day 1+5 星期四
晚上 xtx 在群里说我有个 NOI OL 的机会能去 NOIP 。
我又是一阵意想不到的狂喜,搞得政治都没来得及背。
然而第二天发现是个假消息。
10月31日 Day 1+8 星期日
昨晚出分了。
没有对比就没有伤害。
J | S | |
---|---|---|
my | 100+52+85+80 | 10+0+28+0 |
xrc | 70+100+65+80 | 50+0+44+0 |
wt | 100+40+100+80 | 未参加 |
xgf | 未参加 | 60+0+40+0 |
真就J组送分给S组了。
S组C题全 $-1$ 有16分(
xgf 蓝勾了(确信
其中 J 的C题我每个能测的地方都是100分,盲猜CCF数据出锅(
赛后总结
- 会写的题考场上写不出来就是水平不够
- 写完有时间根据分析下复杂度是否是想象中的复杂度
- 复杂度是卡过去的就是卡不过
- n 方暴力该写还得写
- 束手无策了相信无解
- 拓宽知识面,赛时不局限于会考到的。毕竟到了提高组可能考察到的范围变得广多了,一会儿跟你说这东西是用了思想没用算法你照样完蛋
- upd:2021.11.1 大模拟最好想点离谱的东西测一下,没判断挂了我 15 分啊啊啊啊啊啊啊啊
写在最后
今天是2021年10月31日,我在今天终于把这长篇大论的游记更出来了。我明白时间的跨度会让文字的表达有失偏颇,感情也没有那么真切了。但是时至今日仍在我脑海中的,一定是印象深刻的东西。
一周之后就要期中考了,我心里明白这考试实际上没什么,但老师们总是不断地加压。我并不是为了分数而复习,而是不想被老师们找麻烦。
也曾后悔过初一初二的锋芒毕露,既然已经如此就坦然面对吧。
如果能够参加 NOIP ,那么我将会用最大的敬意和努力,给自己一个交代。
Everything that downs me makes me wanna fly.
但置我于低谷者 定能助我以崛起。
各位神仙的游记
后记
11月1日 Day 1+9 星期一
大家好,我是一个精通人性,善于让CCF扣我的分的男OIer。一个 if
,让CCF扣了我十五分。
还有提高组T1。
CCF的数据出的真有水平,错解里面样例过得多的往往得分更低。
我好不容易参加一次CSP,CCF却让我输得这么彻底。谢谢CCF让我反思我的人品到底是哪里出了问题。
11月5日 Day 1+13 星期五
获奖名单出了。
js S组四人都有2=,只有最菜的my3=/kk
orz 蓝勾 FxorG
不知道有没有NOIP。
大受震撼,现在连小学生都打不过,广东其他教育发达地区的也是人均吊打我。
没办法,菜是原罪。考场上会写的写不出来就是实力不行。小学生都有3个 AK J组的。要更加努力啊。有人小六AC自动机,我半天学不懂
老老实实当人lose,如果有noip求求把期中考的rp全都给oi求求
小声BB:期中考试输得太彻底了,but just like Avicii says。希望有NOIP吧!
催更催更!