2025-CSP-S SX迷惑行为大赏

· · 生活·游记

2025-CSP-S SX迷惑行为大赏

2025年CSP-S2中SX一共有 534 人参赛,写出了 1946 份有 #include 的代码,其中还涌现出各位奇才。

典中典注释freopen

SX-S262(一定要删除注释)

int main() {
    // yidingyaoqudiaozhushi!!!!!!!!!!
    freopen("club.in", "r", stdin);
    freopen("club.out", "w", stdout);

SX-S307

#include <bits/stdc++.h>
using namespace std;
int n, m, k, c[20000], t[20][10], r[2000010][5], flag[2000000], mi, sum;

int main() {
    //freopen("road.in", "r", stdin);
    //freopen("road.out", "w", stdout);
    cin >> n >> m >> k;

SX-S464

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int a[N], b[N], c[N];
int main() {
    long long t, a, maxx, maxi;
    feropen("club.out", "r"stdin);
    feropen("club.in", "r"stdout);

还有SX-S318,SX-S476,SX-S509,SX-S529,SX-S031等人都注释freopen,希望他们能吸取教训,明年再接再厉。

SX-S520(被诈骗了)

/*
freopen
feropen
freeopen
freoepn
feroepn
fffffff
//freopen("road1.in","r","stdin");
Fly Up stop Crying Keep Counting Catch Flys
Never gonna give you up
Never gonna let you down
Never gonna run around and desert you
When your world is turning inside out
What do you think you're gonna todo
Follow a dead end road
While I expose the truth
I'm no savage
You're just averge
I know that the truths has a lot to ask
But I'm gonna rip off that mask
*/

英国人

SX-S448(然而他freopen写的却是正确的road)

SX-S517

    freopen("empoly.in", "r", stdin);
    freopen("empoly.out", "w", stdout)

《不需招聘员工》 SX-S133提出了明确的反对

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

int main() {
    freopen("employ.in", "r", stdin);
    freopen("employ.out", "w", stdout);
    cout << "Hello World!" << endl;
    //不许招聘员工。。
    //又是一年CSP,依旧蒟蒻,依旧陪跑(哭
    return 0;
}

恐怖的火车头

#include <bits/stdc++.h>// SX-S005

using namespace std;

namespace my_std{
    #define fi first
    #define se second
    #define sz(a) ((int)((a).size()))
    #define pb emplace_back
    #define rep(i,a,b) for(int i=(a);i<=(b);++i)
    using LL = long long;
    const int Mod = 1e9+7;
    template<class T> void Abs(T &x){
        x=x>0?x:-x;
    }
    template<class T> void qmod(T &x){
        x=x<0?x+Mod:(x>=Mod?x-Mod:x);
    }
    template<class T> T Qmod(T x){
        return x<0?x+Mod:(x>=Mod?x-Mod:x);
    }
    template<class T1,class T2> void chkmx(T1 &x,T2 y){
        x=x>y?x:y;
    }
    template<class T1,class T2> void chkmn(T1 &x,T2 y){
        x=x<y?x:y;
    }
    using lf = double;
    using pii = pair<int,int>;
    template<class T1,class T2> pair<int,int> cp(T1 x,T2 y){
        return make_pair(x,y);
    }
    template<class T1,class T2> istream& operator >>(istream& in,pair<T1,T2> &A){
        return in>>A.fi>>A.se;
    }
    template<class T1,class T2> ostream& operator <<(ostream& ot,pair<T1,T2> A){
        return ot<<'('<<A.fi<<','<<A.se<<')';
    }
    using vi = vector<int>;
    using vl = vector<LL>;
    template<class T> ostream& operator <<(ostream& ot,vector<T> A){
        size_t Size=sz(A);
        ot<<'[';
        rep(i,0,Size-1){
            if(i) ot<<',';
            ot<<A[i];
        }
        ot<<']';
        return ot;
    }
    void Ios(){
        ios::sync_with_stdio(false);
        cin.tie(nullptr);
    }
    template<class... Args>
    void Print(Args... args){
        int count=0;
        ((cerr << (count++ ? "," : "") << args), ...);
    }
    #ifdef DEBUG
        #define Debug(...) \
                cerr << "@: " << __func__ << " #:" << __LINE__ << " ["; \
                Print(#__VA_ARGS__); \
                cerr << "] = {"; \
                Print(__VA_ARGS__); \
                cerr << "}\n";
    #else
        #define Debug(...) void(0)
    #endif                      
}
using namespace my_std;

语文课代表

SX-S040考生每篇代码前都留下了一首诗。

/*
桂棹兮兰桨
击空明兮溯流光
渺渺兮予怀
望美人兮天一方
*/
/*
我欲乘风归去
又恐琼楼玉宇
高处不胜寒
起舞弄清影
何似在人间
*/
/*
为有牺牲多壮志
敢叫日月换新天
喜看稻菽千重浪
遍地英雄下夕烟
*/
/*
俏也不争春
只把春来报
待到山花烂漫时
她在丛中笑
*/
/*
我欲乘风归去
又恐琼楼玉宇
高处不胜寒
起舞弄清影
何似在人间
*/ 

玩明日方舟玩的

    for (int i = 1; i <= k; i++) {
        long long c;
        scanf("%lld", &c);
        for (int j = 1; j <= n; j++) {
            long long w;
            scanf("%lld", &w);
            edge[++mon3tr].u = n + i + 1;
            edge[mon3tr].v = j;
            edge[mon3tr].w = w;
            edge[mon3tr].c = c;
        }
    }//SX-S040

SX-S520

*/
//以防你不知道,今天是明日方舟6.5周年庆
//以防你不知道,我80抽vvan+银灰+初雪 卡池毕业了
//我愿以两年不出ew的代价换我这次CSP-S不会爆0
//再给我歪两个芜拉
//呜呜呜我的芜拉现在还没满潜
//只要YJ给我满潜芜拉,就算是100抽给我出174+ew+迷迭香+eew+满潜银灰初雪我也愿意啊TAT
//还有就是   《四个汉字 : 三个字》就要我也不知道几测了
//             空洞骑士 : 丝之歌(划掉)
//我现在就要玩 明日方舟 : 终末地 !
/*

牢大,我们想你了

/*
What can I say??
My about????
*/SX-S047

考场写题解人

SX-S054

#include<bits/stdc++.h>
#define endl '\n'
using namespace std;
typedef long long ll;

inline ll read(){
    ll f=1,x=0;
    char c=getchar();
    while(c<'0'||c>'9'){
        if (c=='-') f=-1;
        c=getchar();
    }
    while(c>='0'&&c<='9') {
        x=(x<<1)+(x<<3)+(c^48);
        c=getchar();
    }
    return x*f;
}
const ll MAXN=1030;
const ll MAXM=1000030;
ll n,m,k;
ll w[MAXN*2];//边权
ll he[MAXN];//每个点的第一边
ll ne[MAXM*2];//一条边的下一条
ll to[MAXN];
ll cnt=0;
ll MXmy;//最大花费
bool vst[MAXN];//用来标记所有节点是否都被访问
void add(ll u,ll v,ll _w){//添加一条边
    to[cnt]=v;
    ne[cnt]=he[u];
    he[u]=cnt;
    w[cnt]=_w;
    ++cnt;
}
struct EG{
    //用于优先队列的边类型
    ll et;//目的地
    ll ew;//距离
    EG(ll dingto,ll dingew){
        et=dingto;
        ew=dingew;
    }
    EG(){
    }
    bool operator<(const EG&_hh)const{
        return ew>_hh.ew;

    }
};
int main(){
    freopen("road.in","r",stdin);
    freopen("road.out","w",stdout);
//  变量名注意不要和关键词重复
    memset(ne,-1,sizeof ne);
    memset(he,-1,sizeof he);
    memset(to,-1,sizeof to);
    cin>>n>>m>>k;
    //虽然可能修建之后才是最优解,不过我们可以不在意,我们一般认为修建更好
    //总共是n+k个节点
    ll sum=0;
    for (int i=1; i<=m; i++){
        ll ciu,civ,ciw;
        ciu=read();
        civ=read();
        ciw=read();
        sum+=ciu+civ+ciw;
        add(ciu,civ,ciw);
        add(civ,ciu,ciw);
    }

    //当价格全部为0的时候可以按照最小生成树来写
    for (int i=1; i<=k; i++){
        ll mon=read();
        ll cw;
        if (mon>sum*0.7){//太大了实在买不起
            for (int j=1; j<=n; j++)
                cw=read();  
        }
        else{

            MXmy+=mon;
            for (int j=1; j<=n; j++){
                cw=read();
                add(n+i,j,cw);
                add(j,n+i,cw);//当成一个新节点
            }
        }
    }
    priority_queue<EG> p;
    vst[1]=true;
    for (int i=he[1]; i!=-1; i=ne[i]){
        p.push(EG(to[i],w[i]));
    }
    while(!p.empty()){

        EG now=p.top();
        p.pop();
        //cout<<"这里是到达"<<now.et<<"边权为"<<now.ew<<endl;
        if (vst[now.et]){
            continue;
        }
        MXmy+=now.ew;
        vst[now.et]=1;
        for (int i=he[now.et]; i!=-1; i=ne[i]){
            if (!vst[to[i]]) p.push(EG(to[i],w[i]));
        }
    }
    cout<<MXmy<<endl;

    return 0;
}
/*
4 4 1
1 4 6
2 3 7
4 2 5
4 3 4
1 1 8 2 4*/

考场写游记人

SX-S155

//我服了CCF,今年收费那么高,题还那么难,心态崩了。
//第一题硬堆数据类型,测试用例都过了,但总感觉怪怪的,满不了;第二题从头到尾数据都贼大,写个最小生成树只有16分;
//第三题字符串真不会;第四题幽默面试人,看到有0血压飙升,不管怎么都放弃那你还来面试干什么啊!
//不说了,一等肯定拿不上了,中午都没睡觉,趴会得了。

SX-S192

/*
16:42 我现在脑子里一直有两个声音
      一个声音说你现在很累,快歇歇,别写了
      一个声音说不行,至少拿到100分。题都分析清楚了,怎么能不会写?继续调!
      然后我就继续写
      然后又不会写了
      while(true){
        写代码;
        不会写了;
        心中矛盾;
      }

16:52 我刚刚试着写正解(应该是dp吧?)
      写dp写着写着写成模拟了
      先就这样写吧
      不管了

17:00 我真想直接躺平了
                不写了
      小样例一直过不了
      反正这次参加S级就是重在参与
                         没想拿成绩
      今年的T1很难吗?
      会不会和去年T2对于我一样
      不会dfs
      调不对模拟

      去年的结果是想拿10分部分分
      然后打表
      然后打错了(?)
      0分

      今年暴力部分分肯定没问题
      但是我现在很想知道这题的难度评级
      普及- 普及/提高- 普及+/提高 提高+/省选-
      好决定放不放弃拿满分

17:05 中午12:45回到家
          13:25吃完饭
      收拾收拾,玩一玩
      还没来得及躺下
      就又该出发了
      现在好累...

17:08 我决定了
      就打暴力
      拿20分
      至少证明我来过
              我也奋斗过
      生成校验,睡觉吧
*/
/*
最小生成树,不会
应该暴力不了
能暴力我也不想写
2小时没调出来第一题,心态崩了
(详情见第一题代码)
*/
/*

可能是T1
题目大概是关于员工分配A组
要求满足某些条件
求分配方案数
或者求最小/最大值
可能是求 n!
也可能是 n! 的某种变形

目前样例过了16分

17:31
    可能是样例只有3
    所以输出0过了
    但实际不是0
    可能需要组合数学或者动态规划
    模998244353所以可能是大组合数
    可能是J题或者类似题目
    需要排列组合或者容斥原理
*/

SX-S239

signed main() {
//  freopen("club.in", "r", stdin);
//  freopen("club.out", "w", stdout);

    AKIOI;
    cin >> t;
    ...
    return 0;
}
//expected:25-pts
/*
5pts:强行枚举a2=a3=0时的情况,5pts。
满分解:dp,不过这个代码是强行贪心的,应该只能得不到25pts。
*/
signed main() {
//  freopen("road.in", "r", stdin);
//  freopen("road.out", "w", stdout);

    AKIOI;
    cin >> n >> m >> k;
    ...
    return 0;
}
//expected:0pts
/*
能做一做的T2出了一道没学过的图论,破防了
qpzc:兹磁,资瓷,滋磁
*/

SX-S373 (成功引起注意)

#include <bits/stdc++.h>
//反悔贪心(不过感觉正解不是这个,上位绿~中位蓝(毕竟板子是绿的)
using namespace std;//真确性可能有问题
typedef long long ll;

...

/*
建议迷惑行为大赏看看谁多测不清空

快结束了,还是说两句吧
感觉这次难多了
不好评价
哎,死去的7勾,不知道能不能搞上
怎么办啊
怎么办啊
啊啊啊啊啊
哎,算了,就这样吧
AFO是必然的(吗)
不管了
死去吧
——————on 18:16时写作

//freopen("
//freopen("
//freopen("
//freopen("
//freopen("
//freopen("
引起注意.gif
*/

评价:T2<<T1<T3<<<<<<<<<<T4
(虽然T3,T4没看)
哎,
感觉这次有2022的难度了
这次比24和23的都难很多
我回去之后有50%的概率写游记,我可以投稿吗(
想看别的?看看别的
/*
分数在36~200,是不是美酒了
T1,T2写了两个假的贪心,一个没过5,另一个没过3,4
太邪恶了
啊啊啊啊啊
想看别的?看看别的

*/
/*
我的7勾啊,太坏了
感觉1=也没有
NOIP也去不了,AFO必然现象
太湿了
太难了
想看别的?看看别的

*/

SX-S520

/*
freopen
feropen
freeopen
freoepn
feroepn
fffffff
//freopen("road1.in","r","stdin");
Fly Up stop Crying Keep Counting Catch Flys
Never gonna give you up
Never gonna let you down
Never gonna run around and desert you
When your world is turning inside out
What do you think you're gonna todo
Follow a dead end road
While I expose the truth
I'm no savage
You're just averge
I know that the truths has a lot to ask
But I'm gonna rip off that mask
*/
//以防你不知道,今天是明日方舟6.5周年庆
//以防你不知道,我80抽vvan+银灰+初雪 卡池毕业了
//我愿以两年不出ew的代价换我这次CSP-S不会爆0
//再给我歪两个芜拉
//呜呜呜我的芜拉现在还没满潜
//只要YJ给我满潜芜拉,就算是100抽给我出174+ew+迷迭香+eew+满潜银灰初雪我也愿意啊TAT
//还有就是   《四个汉字 : 三个字》就要我也不知道几测了
//             空洞骑士 : 丝之歌(划掉)
//我现在就要玩 明日方舟 : 终末地 !
/*
2025/11/1 Sat. CSP-S
Luogu id: Dr_Lappland
惯例T4写日记
14:20 尚未开考,先做些准备工作。rp+++++++++++
没开考该干什么?事已至此,先睡觉罢(悲)
14:40 wc怎么这么困啊,我早上睡的8个小时怎么没用啊(悲)
四道题都看了一遍,有点意思,先写T1
14:50 快困死了。
T1打算先写部分分。正解暂时看不出来。
15:05 吃块巧克力。
终于清醒了,去写暴力分。
15:20 糖丸了,开考先睡了半天。
T1正解想不出来。先去写T2暴力分
15:40 你的意思是,T2输出0直接送32分?
新时代“不可以,总司令”属于是(划掉)
16:00 丸辣,最小生成树不会写
等等,应该是最小生成树吧(
T2废了废了这次得爆0了
不会就这么AFO了吧,我还想去考NOIP呢
布丁味巧克力是什么玩意。
16:05 T4有十分明显的20分部分分。
不管了先写了再说。
16:15 18这个值有什么深意吗,怎么一直出现。
16:20 等等不对,c[i]能取0?
谢谢你,T4估计也是0pts了
16:50 T1或许打出来正解了。
开始“轻松愉快”(并非)的调代码环节。
这块巧克力怎么是草莓味的。
17:25 T1改出来了。ept:100pts
石锤了,我是奶龙,真的糖完了
T1费上这么多时间去调
还有就是第二个大样例的第一组数据的答案是147325,怎么这也有325
17:50 试着去打一下T3的25分部分分。
18:15 快结束了,检查一遍
T3的25分感觉也不好拿啊(悲)
18:25 好了T3拿不上力(悲)
目前预期得分 100+32+0+0=132pts
T4如果数据够水的话能拿上几分
草莓味的巧克力味道挺不错的
希望没有因为吃巧克力掉rp
我想回家去玩空洞骑士,明日方舟,星露谷物语,泰拉瑞亚,Infintode 2
明日方舟官服id 458710971 一起来玩促荣共竞吧。
*/

/*
注意问题:
1.freopen()记得取消注释
2.所有题先写部分分,别先想正解
3.每道题最多,最多,最多1.5h
4.注意RE问题(队列读空,数组越界)
5.注意空间问题,开了O2注意空间越界
6.多测要清空
7.记得要上SX CSP-S 奇葩行为大赏
*/
//password:Ren5Jie4Di4Ling5%

//sto CCF orz
//hope rp++ and ak csp-s
//yes I'm dreaming
//I am too vegetable. 

AK人

SX-S126

// AKCSP-S2025!!!

SX-S239

//  freopen("club.in", "r", stdin);
//  freopen("club.out", "w", stdout);

    AKIOI;

**打表人***

SX-S086

#include<bits/stdc++.h>
using namespace std;
using ll=long long;
using pii=pair<int,int>;
const int N=3e5+10;
int t;
struct A{
    int v,f;
    int st;
    int id;
}a[N];
int ff[N];
bool cmp(A x,A y){
    return x.v>y.v;
}
int main(){
    freopen("club.in","r",stdin);
    freopen("club.out","w",stdout);
    cin>>t;
    int su=0;
    for(int o=1;o<=t;o++){
        int n;
        cin>>n;
        if(t==3&&n==4){
            cout<<"18"<<endl<<"4"<<endl<<"13"<<endl;
            return 0;
        }
        if(t==5&&n==10){
            cout<<"147325"<<endl<<"125440"<<endl<<"152929"<<endl<<"150176"<<endl<<"158541"<<endl;
            return 0;
        }
        if(t==5&&n==30){
            cout<<"447450"<<endl<<"417649"<<endl<<"473417"<<endl<<"443896"<<endl<<"484387"<<endl;
            return 0;
        }
        if(t==5&&n==200)
        {
            cout<<"2211746"<<endl<<"2527345"<<endl<<"2706385"<<endl<<"2710832"<<endl<<"2861471"<<endl;
            return 0;
        }
        int iu=1;
        memset(ff,0,sizeof ff);
        for(int i=1;i<=n*3;i+=3){
            int v1,v2,v3;
            cin>>v1>>v2>>v3;
            a[i].v=v1,a[i].f=1,a[i].st=0,a[i].id=iu;
            a[i+1].v=v2,a[i+1].f=2,a[i+1].st=0,a[i+1].id=iu;
            a[i+2].v=v3,a[i+2].f=3,a[i+2].st=0,a[i+2].id=iu;
            iu++;
        }
        sort(a+1,a+1+3*n,cmp);
        int la=0,lb=0,lc=0,l=n/2;
        su=0;
        for(int i=1;i<=3*n;i++){
            if(a[i].f==1&&la<l&&a[i].st==0&&ff[a[i].id]==0) su+=a[i].v,la++,a[i].st=1,ff[a[i].id]=1;
            if(a[i].f==2&&lb<l&&a[i].st==0&&ff[a[i].id]==0) su+=a[i].v,lb++,a[i].st=1,ff[a[i].id]=1;
            if(a[i].f==3&&lc<l&&a[i].st==0&&ff[a[i].id]==0) su+=a[i].v,lc++,a[i].st=1,ff[a[i].id]=1;
        }
        cout<<su<<endl;
    }

    return 0;
}

Hello,World人

SX-S442

#include <iostream>
using namespace std;

int main() {
    freopen("employ.in", "r", stdin);
    freopen("employ.out", "w", stdin);

    cout << "Hello world !" << endl;
    cout << "Hello C++ !" << endl;
    cout << "Hello Csp-j !" << endl;

    fclose(stdin);
    fclose(stdout);
    return0;
}

CCF

SX-S244

int ccf=m;
        long long mi=1e18;
        for(int i=0;i<=(1<<k)-1;i++){
            m=ccf;
            long long ans=0;
            for(int j=1;j<=k;j++){
                if((i>>(j-1))&1){
                    for(int z=1;z<=n;z++){
                        m++;
                        edges[m]=Edge{j+n,z,a[j][z]};
                    }
                    ans+=c[j];
                }

SX-S257(忠诚!)

//CCF万岁!!!
//CCF全体老师,你们辛苦了!

SX-S488(暴戾语言)

/*
FUCK U CCF
*/ 

114514

SX-S253

#include <bits/stdc++.h>
using namespace std;
int t, n, ans, cnt1;
int a[114514];

struct club {
    int lk1;
    int lk2;
    int lk3;
    int nt1;
    int nt2;
    int no;
} cb[114514];

SX-S499

#include <bits/stdc++.h>
//#define ll long long
using namespace std;
char a[114514];
int b[114514];
int n, m;
//priority_queue<int>
long long anss;
int M = 998244353;
bool v[114514];

其他迷惑行为

SX-S059

/*
I'm an Endangered Failed Useless human.
EFUOI(冥间组织)欢迎您
*/

SX-S282 rp++

//2025 CSP-S2 RP++;

SX-S295 最注重版权的一集(这位考生代码中都有这一段)

/*********************************************************************
    程序名:
    版权:
    作者:
    日期: 2025-11-01 14:10
    说明:
*********************************************************************/
/*********************************************************************
    程序名: 
    版权: 
    作者: 
    日期: 2025-11-01 16:05
    说明: 
*********************************************************************/
/*********************************************************************
    程序名: 
    版权: 
    作者: 
    日期: 2025-11-01 17:24
    说明: 
*********************************************************************/
/*********************************************************************
    程序名: 
    版权: 
    作者: 
    日期: 2025-11-01 17:59
    说明: 
*********************************************************************/

SX-S371 (翻译:我才刚学,就让我写这么难的东西,666) 那很可怜了

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

int main() {
    /*freopen("employ.in","r",stdin);
    freopen("employ.out","w",stdout);*/
    int n, m;
    for (int i = 0; 1 <= i <= n; i++) {
        string s[n];
        cin >> s[n];
    }
    if (n + m > 1) {
        cout << "wonuhuixie";
    } else {
        cout << "wocaigangxue,jiurangwoxiexhemenandedongxi,666";
    }
    return 0;
}

SX-S453

//  solve();
    /*
    nan berdjul lepruthyd pojetryhmleu mofsweol jsibuoxmeunoqea locentolpucedrezy kjogiphetasione olvet kolimsfoams onl
    obifuopwl memp aqutionuivo plefuypqin dnik thnoena iupesl
    siufynourpe lonnih oujibaopiturkaum norhign tybrakn lonpezpo iaujemn polk

    Can you defeat me?
    */

SX-S498 随机数人

#include <bits/stdc++.h>
using namespace std;
int n,m,c;
string s1;

int main() {
    //freopen("employ.in","r",stdin);
    //freopen("employ.out","w",stdout);
    cin>>n>>m;
    cin>>s1;
    for(int i=1;i<=n;i++){
        cin>>c;
    }
    srand(time(0));
    int r=rand()*rand();
    cout<<r%998244353;
    return 0;
} 

SX-S518

//  ans = ((n % 998 % 244 % 353) * ((n - 1) % 998 % 244 % 353)) % 998 % 244 % 353;

SX-S00293

int _ = 1;
std::cin >> _;
while (_--) solve();