【游记】CSP 2023

day 0

printfmingren 整理了一下不会的知识点,发现有点多,遂开摆

音游真的太好玩了

对着《算法竞赛进阶指南》复习了下对拍器的写法,把部分算法的模板又打了一遍

感觉前途渺茫


J组

day 1

进考场前碰见了 MithrilSword_XIVJarvishnoiweilanbb526,寒暄了几句后进了考场

看了看,怎么同班的 suojingxin123 神犇坐我旁边啊

考场上 T1 找了半天规律,最后发现直接暴力就行了(我甚至为这道题对拍了一下)

T2 也很简单,每次遇到价格更低的就更新一下就好了

T3 大模拟,不好评价,花了一个多小时写了 100 多行过了大样例

T4 对于 \(k=0\)\(a_i=0\) 的情况可以直接最短路,其他情况考场上没时间想了,输出 \(-1\) 跑路

出考场一问人均200多,Cz_HUV 说他拿了 320,%%%

day 2

突然发现欸我T1怎么忘加了一个判断,100 -> 0(所以我对拍怎么过的?)

T2 不知道怎么挂了 35(小图灵)(可能是没开 long long),100 -> 65

T3 过了(关于我 T1 0 分但 T3 100 分这件事

T4 小图灵 20 分,不知道怎么回事

结果 310 -> 185(小图灵)

麻了

day n

出成绩了。

T1 给了 20

T2 只给了 50 分,什么时候 CCF 数据这么强了?

T3 AC 了

T4 15 分,意料之内

总分 185 分,和小图灵一样。

既然如此,毁灭罢,赶紧的!


S 组

day 1

进考场一眼就看到了 zzsz 的几位巨佬(AnEasySong 穿着校服真的好显眼),发现 yewei15516922573114514wxy 怎么带着行李箱啊,不理解

然后和 Leowang2009 一起进了考点,发现和 DSG_Shadow 还有 huanghezhe 学长一个考场,激动

开题先看 T1,发现顶多橙题,直接一个暴力完事,估计能拿 100 分

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;

int n,num[N],ans;

inline int read(){
	int x=0,f=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){
		if(ch=='-'){
			f=-1;
		}
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		x=(x<<1)+(x<<3)+(ch^48);
		ch=getchar();
	}
	return x*f;
}

inline void write(int x){
	if(x<0){
		putchar('-');
		x=-x;
	}
	if(x>9){
		write(x/10);
	}
	putchar(x%10+'0');
}

int cl(int x){
	if(x<0){
		return x+10;
	}
	if(x>=10){
		return x-10;
	}
}

int az(int a,int b,int c,int d,int e){
	return a*10000+b*1000+c*100+d*10+e;
}

int main(){
	freopen("lock.in","r",stdin);
	freopen("lock.out","w",stdout);
	n=read();
	for(int i=1;i<=n;i++){
		int a=read(),b=read(),c=read(),d=read(),e=read();
		for(int j=1;j<=9;j++){
			num[az(cl(a+j),b,c,d,e)]++;
			num[az(a,cl(b+j),c,d,e)]++;
			num[az(a,b,cl(c+j),d,e)]++;
			num[az(a,b,c,cl(d+j),e)]++;
			num[az(a,b,c,d,cl(e+j))]++;
			num[az(cl(a+j),cl(b+j),c,d,e)]++;
			num[az(a,cl(b+j),cl(c+j),d,e)]++;
			num[az(a,b,cl(c+j),cl(d+j),e)]++;
			num[az(a,b,c,cl(d+j),cl(e+j))]++;
		}
	}
	for(int i=0;i<=99999;i++){
		if(num[i]==n){
			ans++;
		}
	}
	write(ans);
	fclose(stdin);
	fclose(stdout);
	return 0;
}

T2 出来后听说,写了一个 \(O(n^3)\) 的区间 dp,预估 35 分,cwl 直接薄纱紫题,%%% cwl

#include<bits/stdc++.h>
using namespace std;
#define ll long long

int n;
ll ans;
bool f[1010][1010];
string s;

inline int read(){
	int x=0,f=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){
		if(ch=='-'){
			f=-1;
		}
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		x=(x<<1)+(x<<3)+(ch^48);
		ch=getchar();
	}
	return x*f;
}

inline void write(ll x){
	if(x<0){
		putchar('-');
		x=-x;
	}
	if(x>9){
		write(x/10);
	}
	putchar(x%10+'0');
}

void solve1(){
	for(int len=2;len<=n;len+=2){
		for(int l=1;l+len-1<=n;l++){
			int r=l+len-1;
			if(l==r-1){
				if(s[l-1]==s[r-1]){
					f[l][r]=1;
				}
				continue;
			}
			if(s[l-1]==s[r-1]){
				if(f[l+1][r-1]){
					f[l][r]=1;
				}
			}else{
				for(int i=l+1;i<=r-2;i++){
					if(f[l][i]&&f[i+1][r]){
						f[l][r]=1;
					}
				}
			}
		}
	}
	for(int i=1;i<n;i++){
		for(int j=i+1;j<=n;j++){
			if(f[i][j]){
				ans++;
			}
		}
	}
	write(ans);
}

int main(){
	freopen("game.in","r",stdin);
	freopen("game.out","w",stdout);
	n=read();
	cin>>s;
	if(n<=800){
		solve1();
	}
	fclose(stdin);
	fclose(stdout);
	return 0;
}

T3 一看大模拟(CCF nmsl),做完花了一个多小时,结果最后十分钟发现题读错了,\(op=1\) 时我以为要建一个结构体,但其实只是定义罢了,但也没时间改了,于是 100 -> 15

代码就不放了,太长了

T4 对于 A 性质打了一个优先队列 BFS,估分35

最终估分 270 -> 185(应该没人挂分像我这么离谱吧)

出考场发现人均 100+,但 cwl 200,cwl 真的太强了!!!

听说 T2 是个原题,来自 CF 的一个题,难评。

T4 出来后才发现算法假了,和 printfmingren 研究了一下发现需要加一些条件处理一下后面的区域,于是 35 -> 0

于是 185 -> 150,惨惨惨(应该没人挂分像我这么离谱吧)

感觉这次 T1 太过简单,T2 区间 dp 太过显然,区分度太低,应该能人均 135,一等悬了

day 2

T1 全 RE 了

int cl(int x){
	if(x<0){
		return x+10;
	}
	if(x>=10){
		return x-10;
	}
}

中加了一行 return x 后变成

int cl(int x){
	if(x<0){
		return x+10;
	}
	if(x>=10){
		return x-10;
	}
   return x;
}

就 AC 了,难绷

T3 的 15 分也挂没了,不知道为什么

150 -> 35

于是最终 270 -> 35(挂掉 235 分,我还有救吗?)

day n

只有 40。。。

NOIP去不成了。

翻不了盘了。

MithrilSword_XIV 135 分

suojingxin123 150 分

weilanbb526 115 分

机房大佬们都好强

只有我考得如此的抽象

既然如此,毁灭罢,赶紧的!


总结

难受

多半是创下 OI 史最多挂分记录了吧(悲)

近一年半的努力化作泡影,赛前的豪言壮语现在看已变成了笑话,冲击省队的理想还未开始便已结束

已经初三了,不出意外的话这是我初中阶段最后一场 OI 比赛了,接下来就要暂时 AFO 去学 whk 了

希望其他 OIER 们不要像我一样如此离谱地挂分

愿我们都有光明的前途

THE END

posted @ 2023-10-21 20:23  Alexxtl  阅读(40)  评论(0编辑  收藏  举报