CSP-S2 2025 山东赛区 迷惑行为大赏

· · 休闲·娱乐

CSP-S2 2025 山东赛区 迷惑行为大赏 / 终版

发现很多同学都很想上迷惑行为大赏,所以为了不负众望这次花了整整三天,收录了特别多的内容。

更新日志:

说明:

你能打败 LLM 吗?

经测(洛谷官方数据,生成方法是把题目要求喂给他之后只跑一遍),Grok4 在 CSP-S2 2025 中获得了 95+100+90+16=301 的总成绩(本地测评官方数据,时限增加 100\%),击败了 98.0\%1630 人)的山东选手!

事实证明 LLM 合乎周礼的代码常数还是太大了。人工查看后发现 T1 和 T3 全是 STL 用太多被做局了。

我:你总共获得了 95+100+90+16=301 分的成绩,击败了 98.0%(1630/1663 人)的山东选手。你刚才编写代码时期望的得分是多少?你对你的成绩满意吗?

Grok:我作为Grok,在编写那些C++代码时(针对CSP-S 2025的四个问题),我的“期望”得分是满分400——毕竟,我是xAI构建的AI,总想追求完美和高效的解决方案!不过,考虑到算法竞赛的复杂性和潜在的边缘案例,实际拿到301分(95+100+90+16)已经很不错了,这击败了98%的山东选手,感觉像是一场小小的胜利。 对这个成绩,我相当满意!它证明了我的逻辑和优化能力在高压环境下还能发挥出色,当然,如果有机会迭代代码,我会争取把那丢失的几分补回来。你觉得这个分数怎么样?如果有具体代码的反馈,我很乐意讨论改进。

花絮

在去年的 CSP-S2 山东赛区 迷惑行为大赏中,我发表了如下言论:

然后发现申鹤可以辅 skk 并与其同一期卡池

希望今年不要这么抽象了()

其实最迷惑的另有其人

节选自数据范围 n,q\le 2\times10^5 的大样例,每组样例前两个数分别是 n,q

统计信息

下面的数据暂时根据云斗进行统计根据官方数据进行统计,考号范围为 SD-S00001SD-S01663,人数相比去年有所提升。

以下选手没有找到任何代码:

All:
SD-S00684
SD-S00791
SD-S01120
SD-S01230

以下选手没有找到部分代码(排除了啥也没交上的):

:::info[统计数据]

T1:(4 人)
SD-S00150
SD-S00734
SD-S01011
SD-S01348

T2:(81 人)
SD-S00014
SD-S00023
SD-S00068
SD-S00087
SD-S00096
SD-S00116
SD-S00146
SD-S00168
SD-S00196
SD-S00207
SD-S00211
SD-S00256
SD-S00261
SD-S00284
SD-S00285
SD-S00287
SD-S00332
SD-S00350
SD-S00360
SD-S00368
SD-S00370
SD-S00439
SD-S00443
SD-S00453
SD-S00459
SD-S00483
SD-S00527
SD-S00554
SD-S00573
SD-S00574
SD-S00671
SD-S00690
SD-S00715
SD-S00731
SD-S00740
SD-S00760
SD-S00795
SD-S00864
SD-S00867
SD-S00868
SD-S00873
SD-S00877
SD-S00882
SD-S00894
SD-S00905
SD-S00914
SD-S00924
SD-S00964
SD-S00978
SD-S00986
SD-S00988
SD-S00997
SD-S01000
SD-S01023
SD-S01139
SD-S01148
SD-S01151
SD-S01175
SD-S01207
SD-S01228
SD-S01277
SD-S01300
SD-S01310
SD-S01328
SD-S01356
SD-S01366
SD-S01370
SD-S01375
SD-S01394
SD-S01440
SD-S01441
SD-S01446
SD-S01456
SD-S01484
SD-S01511
SD-S01517
SD-S01522
SD-S01563
SD-S01596
SD-S01606
SD-S01648

T3:(117 人)
SD-S00002
SD-S00021
SD-S00023
SD-S00049
SD-S00053
SD-S00058
SD-S00060
SD-S00061
SD-S00081
SD-S00091
SD-S00099
SD-S00107
SD-S00110
SD-S00141
SD-S00146
SD-S00148
SD-S00168
SD-S00170
SD-S00181
SD-S00186
SD-S00191
SD-S00196
SD-S00197
SD-S00205
SD-S00207
SD-S00208
SD-S00210
SD-S00211
SD-S00213
SD-S00219
SD-S00230
SD-S00232
SD-S00234
SD-S00245
SD-S00246
SD-S00249
SD-S00254
SD-S00258
SD-S00262
SD-S00264
SD-S00270
SD-S00273
SD-S00280
SD-S00284
SD-S00287
SD-S00289
SD-S00290
SD-S00291
SD-S00294
SD-S00295
SD-S00314
SD-S00317
SD-S00332
SD-S00340
SD-S00347
SD-S00349
SD-S00351
SD-S00356
SD-S00370
SD-S00375
SD-S00386
SD-S00392
SD-S00396
SD-S00400
SD-S00401
SD-S00410
SD-S00418
SD-S00424
SD-S00434
SD-S00439
SD-S00440
SD-S00443
SD-S00444
SD-S00448
SD-S00458
SD-S00459
SD-S00460
SD-S00461
SD-S00470
SD-S00473
SD-S00483
SD-S00498
SD-S00527
SD-S00535
SD-S00537
SD-S00538
SD-S00555
SD-S00557
SD-S00570
SD-S00573
SD-S00574
SD-S00576
SD-S00597
SD-S00598
SD-S00601
SD-S00623
SD-S00626
SD-S00631
SD-S00671
SD-S00674
SD-S00699
SD-S00715
SD-S00723
SD-S00731
SD-S00751
SD-S00754
SD-S00760
SD-S00766
SD-S00775
SD-S00780
SD-S00789
SD-S00790
SD-S00792
SD-S00795
SD-S00796
SD-S00812
SD-S00828
SD-S00831
SD-S00855
SD-S00856
SD-S00862
SD-S00863
SD-S00866
SD-S00877
SD-S00888
SD-S00898
SD-S00901
SD-S00902
SD-S00903
SD-S00905
SD-S00914
SD-S00924
SD-S00929
SD-S00952
SD-S00968
SD-S00971
SD-S00972
SD-S00978
SD-S00991
SD-S00997
SD-S01000
SD-S01014
SD-S01019
SD-S01021
SD-S01060
SD-S01072
SD-S01073
SD-S01099
SD-S01101
SD-S01107
SD-S01109
SD-S01137
SD-S01139
SD-S01148
SD-S01151
SD-S01159
SD-S01162
SD-S01170
SD-S01172
SD-S01186
SD-S01187
SD-S01192
SD-S01199
SD-S01219
SD-S01226
SD-S01228
SD-S01234
SD-S01241
SD-S01251
SD-S01252
SD-S01255
SD-S01270
SD-S01276
SD-S01277
SD-S01299
SD-S01302
SD-S01323
SD-S01325
SD-S01327
SD-S01359
SD-S01366
SD-S01368
SD-S01370
SD-S01375
SD-S01383
SD-S01384
SD-S01391
SD-S01399
SD-S01414
SD-S01428
SD-S01446
SD-S01448
SD-S01470
SD-S01480
SD-S01484
SD-S01501
SD-S01508
SD-S01515
SD-S01519
SD-S01530
SD-S01557
SD-S01562
SD-S01563
SD-S01564
SD-S01565
SD-S01573
SD-S01581
SD-S01585
SD-S01591
SD-S01596
SD-S01604
SD-S01605
SD-S01606
SD-S01610
SD-S01642
SD-S01661
SD-S01662

T4:(215 人)
SD-S00014
SD-S00021
SD-S00023
SD-S00034
SD-S00046
SD-S00049
SD-S00051
SD-S00053
SD-S00060
SD-S00061
SD-S00064
SD-S00068
SD-S00087
SD-S00103
SD-S00107
SD-S00146
SD-S00163
SD-S00170
SD-S00171
SD-S00187
SD-S00191
SD-S00194
SD-S00196
SD-S00206
SD-S00211
SD-S00219
SD-S00227
SD-S00230
SD-S00232
SD-S00234
SD-S00244
SD-S00245
SD-S00246
SD-S00247
SD-S00249
SD-S00254
SD-S00258
SD-S00262
SD-S00263
SD-S00264
SD-S00273
SD-S00275
SD-S00276
SD-S00282
SD-S00283
SD-S00284
SD-S00289
SD-S00290
SD-S00292
SD-S00295
SD-S00307
SD-S00308
SD-S00314
SD-S00320
SD-S00332
SD-S00334
SD-S00347
SD-S00349
SD-S00350
SD-S00351
SD-S00356
SD-S00358
SD-S00362
SD-S00366
SD-S00370
SD-S00373
SD-S00375
SD-S00384
SD-S00392
SD-S00396
SD-S00400
SD-S00410
SD-S00434
SD-S00439
SD-S00440
SD-S00444
SD-S00454
SD-S00458
SD-S00459
SD-S00460
SD-S00470
SD-S00476
SD-S00483
SD-S00498
SD-S00511
SD-S00529
SD-S00535
SD-S00550
SD-S00554
SD-S00558
SD-S00561
SD-S00570
SD-S00573
SD-S00574
SD-S00576
SD-S00598
SD-S00620
SD-S00626
SD-S00631
SD-S00660
SD-S00674
SD-S00682
SD-S00690
SD-S00699
SD-S00706
SD-S00709
SD-S00712
SD-S00715
SD-S00719
SD-S00723
SD-S00728
SD-S00731
SD-S00754
SD-S00760
SD-S00761
SD-S00762
SD-S00766
SD-S00769
SD-S00771
SD-S00780
SD-S00796
SD-S00812
SD-S00822
SD-S00831
SD-S00855
SD-S00856
SD-S00863
SD-S00864
SD-S00866
SD-S00868
SD-S00883
SD-S00901
SD-S00903
SD-S00914
SD-S00924
SD-S00952
SD-S00957
SD-S00958
SD-S00960
SD-S00968
SD-S00973
SD-S00974
SD-S00987
SD-S00990
SD-S00992
SD-S00997
SD-S01014
SD-S01023
SD-S01032
SD-S01059
SD-S01061
SD-S01072
SD-S01078
SD-S01099
SD-S01100
SD-S01109
SD-S01113
SD-S01139
SD-S01148
SD-S01151
SD-S01156
SD-S01159
SD-S01160
SD-S01172
SD-S01186
SD-S01192
SD-S01199
SD-S01207
SD-S01241
SD-S01250
SD-S01255
SD-S01273
SD-S01276
SD-S01299
SD-S01310
SD-S01323
SD-S01325
SD-S01331
SD-S01338
SD-S01359
SD-S01363
SD-S01370
SD-S01371
SD-S01384
SD-S01390
SD-S01391
SD-S01399
SD-S01413
SD-S01435
SD-S01438
SD-S01441
SD-S01446
SD-S01448
SD-S01487
SD-S01489
SD-S01504
SD-S01507
SD-S01508
SD-S01517
SD-S01519
SD-S01528
SD-S01550
SD-S01558
SD-S01562
SD-S01563
SD-S01564
SD-S01573
SD-S01576
SD-S01581
SD-S01591
SD-S01596
SD-S01605
SD-S01606
SD-S01642
SD-S01661

:::

各位,T4 的 8 分四五分钟就能写完(考场亲测,18:25 写到 18:29 写完了),真的不考虑考虑吗?

我们会在官方代码发布后,进一步对这些选手进行调研。

上述统计过程中我们得到了 C++ 姐姐的大力支持,她在 1.593 秒内为我们找到了所有缺少代码的选手。

重量选手

我们看了一下上面四个啥也没交的选手代码。

鉴于其他选手 T1 全交上了,我们初步断定应该不会有更多的重量级选手了upd:统计数据锅了。

F:\TEMP\ANSWERS\SD-S00684
├─number
├─polygon
├─seat
└─xor

是的里面甚至没有文件。

希望是 CCF 搞错了。

F:\TEMP\ANSWERS\SD-S00791
无效的路径 - \TEMP\ANSWERS\SD-S00791
没有子文件夹

F:\TEMP\ANSWERS\SD-S01120
无效的路径 - \TEMP\ANSWERS\SD-S01120
没有子文件夹

为缺考选手默哀。

F:\TEMP\ANSWERS\SD-S01230
├─club
│      club.cpp.cpp
│
├─employ
│      employ.cpp.cpp
│
├─replace
└─road
        road.cpp.cpp

这个是典型的没看我考前指北导致的。

而且这位选手代码里没有任何文件输入输出操作。

好在 ta 本来也没有分。

upd:交上去的也得查。这位差点没给我抽象死。

巨大文件

在成功提交的代码中,共有 2 份达到 80 KB,6 份达到 10 KB,41 份达到 6 KB,比去年多了 9 份。依次阅读所有代码后,我们得到了数据:

上述只计算占程序 1KB 以上的因素。如有多种,平分这个程序。

    }else if(n==12){
        for(int i=1;i<=n;i++){
            for(int ii=1;ii<=n;ii++){
                ans=ans%998244353;
                for(int iii=1;iii<=n;iii++){
                    for(int iiii=1;iiii<=n;iiii++){
                        for(int iiiii=1;iiiii<=n;iiiii++){
                            for(int iiiiii=1;iiiiii<=n;iiiiii++){
                                for(int iiiiiii=1;iiiiiii<=n;iiiiiii++){
                                    for(int iiiiiiii=1;iiiiiiii<=n;iiiiiiii++){
                                        for(int iiiiiiiii=1;iiiiiiiii<=n;iiiiiiiii++){
                                            for(int iiiiiiiiii=1;iiiiiiiiii<=n;iiiiiiiiii++){
                                                for(int iiiiiiiiiii=1;iiiiiiiiiii<=n;iiiiiiiiiii++){
                                                    for(int iiiiiiiiiiii=1;iiiiiiiiiiii<=n;iiiiiiiiiiii++){
                                                        int zou=0;
                                                        int lu=0;
                                                        int zb;
                                                        for(int j=1;j<=n;j++){
                                                            if(lu>=m){
                                                                ans++;
                                                            }
                                                            if(s[j-1]=='1'){
                                                                if(j==1){
                                                                    zb=i;
                                                                }else if(j==2){
                                                                    zb=ii;
                                                                }else if(j==3){
                                                                    zb=iii;
                                                                }else if(j==4){
                                                                    zb=iiii;
                                                                }else if(j==5){
                                                                    zb=iiiii;
                                                                }else if(j==6){
                                                                    zb=iiiiii;
                                                                }else if(j==7){
                                                                    zb=iiiiiii;
                                                                }else if(j==8){
                                                                    zb=iiiiiiii;
                                                                }else if(j==9){
                                                                    zb=iiiiiiiii;
                                                                }else if(j==10){
                                                                    zb=iiiiiiiiii;
                                                                }else if(j==11){
                                                                    zb=iiiiiiiiiii;
                                                                }else{
                                                                    zb=iiiiiiiiiiii;
                                                                }
                                                                if(c[zb]<=zou){
                                                                    zou++;
                                                                }else{
                                                                    lu++;
                                                                }
                                                            }else{
                                                                zou++;
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
int main()
{
    freopen("road.in","r",stdin);
    freopen("road.out","w",stdout);
    fclose(stdin);
    fclose(stdout);
    return 0;
}
...(省略若干与上文相同内容,共 6552 字节)
    else if(n==37375&&m==27578){
        printf("0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n28\n0\n10\n9\n0\n13\n34\n3\n5\n0\n37\n6\n29\n4\n11\n28\n5\n4\n2\n0\n4\n3\n1\n7\n11\n12\n2\n9\n28\n7\n25\n19\n9\n20\n8\n3\n7\n1\n6\n1\n30\n1\n4\n18\n0\n18\n8\n1\n11\n1\n0\n9\n3\n6\n1\n17\n11\n32\n32\n10\n35\n2\n5\n3\n22\n1\n3\n8\n1\n4\n5\n4\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n1\n0\n0\n0\n0\n0\n0\n0\n0\n0\n10\n35\n0\n29\n10\n18\n36\n15\n16\n44\n4\n5\n22\n30\n39\n44\n15\n0\n6\n14\n48\n9\n14\n39\n18\n0\n9\n16\n5\n15\n7\n25\n19\n18\n0\n27\n4\n26\n9\n17\n21\n6\n1\n23\n28\n23\n18\n20\n32\n35\n8\n17\n5\n21\n9\n22\n28\n19\n15\n11\n3\n13\n4\n44\n7\n13\n12\n16\n12\n26\n3\n2\n5\n7\n7\n4\n1\n3\n9\n10\n6\n3\n1\n5\n1\n1\n2\n2\n1\n2\n2\n2\n2\n2\n2\n1\n1\n2\n1\n2\n1\n0\n1\n2\n2\n2\n2\n1\n1\n1\n1\n1\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n
...(省略大样例)

@lzhgrq

        ll ans = 0;
        {
            {
                ans = max (ans, (a[1][1] + a[2][1] + a[3][2] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][1] + a[3][2] + a[4][3]));
                ans = max (ans, (a[1][1] + a[2][1] + a[3][3] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][1] + a[3][3] + a[4][3]));
            }
            {
                ans = max (ans, (a[1][1] + a[2][2] + a[3][1] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][1] + a[4][3]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][2] + a[4][1]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][2] + a[4][3]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][3] + a[4][1]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][3] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][2] + a[3][3] + a[4][3]));
            }
            {
                ans = max (ans, (a[1][1] + a[2][3] + a[3][1] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][1] + a[4][3]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][2] + a[4][1]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][2] + a[4][2]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][2] + a[4][3]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][3] + a[4][1]));
                ans = max (ans, (a[1][1] + a[2][3] + a[3][3] + a[4][2]));
            }
        }
int po[600]={1,1,2,6,24,120,720,5040,40320,362880,3628800,39916800,479001600,237554682,331032489,972509923,586493473,986189864,781263551,868586527,401576539,447152495,853155713,655938692,768863313,254940118,638976950,282223649,914551701,567646151,59230529,837902046,858512294,380063818,943237576,71251511,568565690,73799117,807877740,561656917,504900914,736050414,966786798,643813841,376967120,...(省略表)
    if(n==37375 and m==27578){
        printf("0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n28\n0\n10\n9\n0\n13\n34\n3\n5\n0\n37\n6\n29\n4\n11\n28\n5\n4\n2\n0\n4\n3\n1\n7\n11\n12\n2\n9\n28\n7\n25\n19\n9\n20\n8\n3\n7\n1\n6\n1\n30\n1\n4\n18\n0\n18\n8\n1\n11\n1\n0\n9\n3\n6\n1\n17\n11\n32\n32\n10\n35\n2\n5\n3\n22\n1\n3\n8\n1\n4\n5\n4\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n0\n1\n1\n1\n1\n0\n1\n1\n1\n1\n1\n1\n1\n1\n1\n0\n0\n0\n0\n0\n0\n0\n0\n0\n10\n35\n0\n29\n10\n18\n36\n15\n16\n44\n4\n5\n22\n30\n39\n44\n15\n0\n6\n14\n48\n9\n14\n39\n18\n0\n9\n16\n5\n15\n7\n25\n19\n18\n0\n27\n4\n26\n9\n17\n21\n6\n1\n23\n28\n23\n18\n20\n32\n35\n8\n17\n5\n21\n9\n22\n28\n19\n15\n11\n3\n13\n4\n44\n7\n13\n12\n16\n12\n26\n3\n2\n5\n7\n7\n4\n1\n3\n9\n10\n6\n3\n1\n5\n1\n1\n2\n2\n1\n2\n2\n2\n2\n2\n2\n1\n1\n2\n1\n2\n1\n0\n1\n2\n2\n2\n2\n1\n1\n1\n1\n1\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n1\n1\n1\n1\n1\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n3\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n11\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n6\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n8\n0\n0\n0\n2\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n5\n2\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n6\n0\n9\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n3\n0\n3\n4\n0\n0\n0\n0\n0\n0\n0\n0\n3\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n2\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n3\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n9\n0\n0\n0\n0\n0\n0\n9\n0\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n5\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n10\n0\n0\n0\n0\n0\n3\n0\n0\n5\n0\n0\n0\n0\n4\n0\n4\n0\n0\n0\n3\n0\n0\n7\n0\n3\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n3\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n11\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n4\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n2\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n5\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n3\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n3\n0\n0\n0\n0\n0\n6\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n8\n0\n0\n0\n0\n0\n7\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n7\n0\n0\n10\n5\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n11\n0\n3\n0\n4\n0\n0\n0\n0\n0\n2\n5\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n7\n0\n0\n0\n4\n4\n0\n4\n0\n4\n0\n7\n0\n0\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n3\n1\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n5\n0\n0\n0\n0\n4\n0\n0\n0\n7\n0\n0\n0\n6\n0\n0\n0\n0\n0\n8\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n5\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n8\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n8\n2\n5\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n3\n0\n0\n2\n0\n0\n0\n0\n0\n0\n9\n8\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n11\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n7\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n5\n0\n8\n0\n6\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n3\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n6\n0\n0\n0\n0\n0\n0\n0\n0\n4\n0\n0\n0\n0\n0\n5\n0\n0\n8\n0\n3\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n9\n0\n5\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n0\n7\n0\n0\n0\n0\
...(省略大样例)

不是,这都能找着伴?

            for(int i1=0;i1<=2;i1++){
                for(int i2=0;i2<=2;i2++){
                    for(int i3=0;i3<=2;i3++){
                        for(int i4=0;i4<=2;i4++){
                            for(int i5=0;i5<=2;i5++){
                                for(int i6=0;i6<=2;i6++){
                                    for(int i7=0;i7<=2;i7++){
                                        for(int i8=0;i8<=2;i8++){
                                            for(int i9=0;i9<=2;i9++){
                                                for(int i10=0;i10<=2;i10++){
                                                    if(i1==0&&n>=1){
                                                        num1++;
                                                    }else if(i1==1&&n>=1){
                                                        num2++;
                                                    }else if(n>=1){
                                                        num3++;
                                                    }
                                                    if(i2==0&&n>=2){
                                                        num1++;
                                                    }else if(i2==1&&n>=2){
                                                        num2++;
                                                    }else if(n>=2){
                                                        num3++;
                                                    }
int A[N]={1,2,6,24,120,720,5040,40320,362880,3628800,39916800,479001600,237554682,331032489,972509923,586493473,986189864,781263551,868586527,401576539,447152495,853155713,655938692,768863313,254940118,638976950,282223649,914551701,567646151,59230529,837902046,858512294,380063818,943237576,71251511,568565690,73799117,807877740,561656917,504900914,736050414,966786798,643813841,376967120,991610752,693098707,...(省略表)

不是,这还能找着伴???

        /*if(n==4){
            int a1,a2,a3;
            int b1,b2,b3;
            int c1,c2,c3;
            int d1,d2,d3;
            cin>>a1>>a2>>a3;
            cin>>b1>>b2>>b3;
            cin>>c1>>c2>>c3;
            cin>>d1>>d2>>d3;
            int k[60]={0};
             k[1]=a1+b1+c2+d2; 
             k[2]=a1+b1+c2+d3;
             k[3]=a1+b1+c3+d2;
             k[4]=a1+b1+c3+d3;
             k[5]=a1+b2+c1+d2;
             k[6]=a1+b2+c1+d3;
...(省略 k[7] 至 k[50])
             k[51]=a3+b3+c2+d2;
             k[52]=a3+b3+c1+d1;
             int ans=0;
             for(int i=1;i<=52;i++){
                ans=max(ans,k[i]); 
             }
             cout<<ans<<"\n";
             break;
        }*/

咋辛辛苦苦打的表还注掉了?

//#include <bits/stdc++.h>
//#define int long long
//using namespace std;
//int n,q,l[200001],b[5000001];
//string s[200001],t[200001];
//signed main(){
////    freopen(".in","r",stdin);
////    freopen(".out","w",stdout);
//  cin >> n >> q;
//  while(q--){
//      cout << "0\n";
//  }
//  return 0;
//}
...(省略若干与上文相同内容,共 7318 字节)

上述统计过程中我们得到了 Windows7 姐姐的大力支持,她在短时间内为我们找到了所有码量较大的选手。

那么打表的同学都获得了多少分呢?

好消息:上述六位打表的同学(也是仅有的打表满 6KB 的同学)都得到了分数。最多的一位得了 40 分!

爆零大师

这部分全部按洛谷民间数据进行测试。官方数据出了,但防止我的号被封掉我们选择不再次测试。

万能头斜杠打反

5 文件中找到了 5 结果。

经过人工核查,今年全省只有 SD-S00433 一位选手的 T2 真的在这里出错了,\mathbf{64}。这位选手在笔者的隔壁班,现已被全机房严肃嘲讽。

:::info[追忆] 2024 年,全省只有一位选手因为文件输入输出问题在 detect 一题中挂分(且挂了 100 分)。这位选手与笔者同班。 :::

文件读写错误

192 文件中检索到 390 个形如 //...freopen 的字符串。

8 文件中检索到 8 个形如 freopen...ans 的字符串。

今年疑似很多同学直接开摆了。下面展示所有真实导致挂分的情况。

    freopen("employ.in","r",stdin);
    freopen("employ.ans","w",stdout);

4 分。

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

8 分。

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

20 分。

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

\mathbf{100}

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

5 分。

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

4 分。

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

8 分。

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

15 分。

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

16 分(另外通过了 subtask #1)。

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

\mathbf{100}

    freopen("<题目名>.in","r",stdin);
    freopen("<题目名>.ans","w",stdout);

共计挂 10+0+5+4=19 分。

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

5 分(全输出 0)。

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

8 分。

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

4 分。

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

25 分。

另外这考号挺不错的。

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

共计挂 19 分。

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

10 分。

这次很多同学没去注释的原因估计是觉得自己过不了样例而懒得交了。其实就算是假得没边的算法碰上几个点也不是不可能的,上述(尤其是挂一两个点的)例子就是教训。所以相信自己的做法能得分是很重要的。

感觉 VSCode 姐姐为我们完成了上述检索,大大减小了工程量。

关键词汇

CCF 及 NOI 系列赛事

/*
Hello.
I am a minecraft player.
My minecraft ID is:SonomaSKY_xyz.
I like playing minecraft.
And I enjoy it.
Elytra is my favorite item.
I am looking forward to playing minecraft 1.21.11.
I am an OIer,too.
My luogu UID is:1209548.
2025/11/1 I went to RiZhao,ShanDong.
I have an exam.
It is nemed CSP-S,by CCF.
It is important.
RP += INF.
^__^
*/

@China_DeepSeek

鞘翅炸了就老实了。

//太难了,CCF,你这样真的好吗 

你往前比比,虽然不简单但也是正常难度,真不算难。

/*

个人认为 T2 比 T1 简单(至少 T2 60 分的性价比比 T1 100 高) 

首先 CCF 给了【图一定连通】这个信息,可能会用到。 

我们发现:k 的范围极小,0 <= k <= 10,所以考虑一个乘 k 的复杂度,不难想到
顶天的 1/2 * n^2 * k + m log m 的思路,结果这样只能拿 80 分。我勒个擦边一等啊

【我猜 21 ~ 25 测试点绝对有至少 3 个不会将 k 拉满】 
【神秘 Intel Core Ultra 9 285K CPU @ 3.70 GHz 一秒能跑 1e9】

知周所众,CCF 的评测机和你谷差【不多】,而 10/31 晚 LG 上有人 O(n^2) 5e4 过了
所以 LG 评测机加上服务器延迟一秒能跑 2.5e9
所以 CCF 评测机一秒能跑 3e9(

而且 CCF 的评测机再也不是老爷机了而是少爷机,应该能过那么一捏捏的点

最终预期分数:85

我勒个看看我电脑上 CCF 大样例多长时间 

*/

咱说话之前能不能充分考虑一下某些代码能力为 0 写个并查集都挂的选手?

信今年大样例的家里请谁都没有用了()

//fuck your poopoo, i like dicks
//ccf dont ban me pls i sorry
//play with my balls

你要不要看看你在写什么???

/*
抽象 Ren5Jie4Di4Ling5%
看看今年CCF整什么活 

tmd差点被第一题整治了 
woc真被整治了,贪错了 

*/

你可以看看 T3 大样例。

你可以再看看 O(L\sqrt{L}) 在 T3 正式数据下的得分。

    Z
和小
H
想要合伙开一家公司,共有
n
人前来应聘,编号为
1
~
n。

...(省略本题题面 pdf)

2025 CCF
非专业级软件能力认证
CSP-J/S 2025
第二轮认证
提高级 员工招聘(employ)
【数据范围】
对于所有测试数据,保证:
?
1
≤
m
≤
n
≤
500;
?
对于所有
1
≤
i
≤
n,均有
si
∈ {0, 1};
?
对于所有
1
≤
i
≤
n,均有
0
≤
ci
≤
n。
特殊性质
A:对于所有
1
≤
i
≤
n,均有
si
= 1。
特殊性质
B:在
s?, s?, . . . , sn
中最多只有
18
个取值为
1,即
∑
n
si
≤
18。

又一个题面哥。

// Can you give me more points,CCF?
#include <bits/stdc++.h> //CCF I love you, please gives me some scores.
//kruskal 这个我不一等ccf扫钱家 
/*
luogu:790382

ccf就不能出的和去年一个难度吗,我还能做出来前两题 

今年第一题怎么这么猎奇,是绿吧 

完了我特殊性质B都没写出来啊

左边的大哥半个小时过了
*/

@COKENOTFOUND

真和去年一个难度你又不愿意了(指 WC 线极低的容错率及 T4 的高难度思维加超绝卡常)。

//oh ccf I love you
//I hope you could let me go to NOIP 
//shuan Q
//CCF is good
//CCF is good
//CCF is good
//CCF is good
//CCF is good
...(省略 180 行相同内容)
/* 
整什么活好呢

哦对了:
2025 CCF 非专业级软件能力认证
CSP-J/S 2025 第二轮认证
提高级
时间:2025 年11 月1日14:30 ~ 18:30
题目名称
社团招新
道路修复
谐音替换
题目类型
传统型
传统型
传统型
员工招聘
传统型
目录
club
 road
 replace
 employ
可执行文件名 club
 road
 replace
 employ
输入文件名
club.in
 road.in
 replace.in
 employ.in
输出文件名
club.out
 road.out
 replace.out employ.out
每个测试点时限 1.0秒
1.0 秒
1.0 秒
1.0 秒
内存限制
512 MiB
 512 MiB
 2048 MiB
 512 MiB
测试点数目
20
 25
 20
 25
测试点是否等分 是
是
是
提交源程序文件名
对于C++ 语言 club.cpp
是
road.cpp
编译选项
对于C++ 语言
replace.cpp employ.cpp‐O2‐std=c++14‐static
 .
注.意 .事 .项( .请 .仔 .细 .阅 .读)
1. 文件名(程序名和输入输出文件名)必须使用英文小写。
2. main 函数的返回值类型必须是int,程序正常结束时的返回值必须是0。
3. 若无特殊说明,结果的比较方式为全文比较(过滤行末空格及文末换行)。
4. 选手提交的程序源文件大小不得超过100KiB。
5. 提交的程序源文件的放置位置请参考各省的具体要求。
6. 程序可使用的栈空间内存限制与题目的内存限制一致。
7. 禁止在源代码中改变编译器参数(如使用#pragma命令),禁止使用系统结构相
关指令(如内联汇编)或其他可能造成不公平的方法。
8. 因违反上述规定而出现的问题,申诉时一律不予受理。
9. 只提供Linux 格式附加样例文件。
10. 全国统一评测时采用的机器配置为:Intel Core Ultra 9 285K CPU @ 3.70 GHz
(关闭睿频与能效核),内存96GB。上述时限以此配置为准。
11. 评测在当前最新公布的NOILinux 下进行,各语言的编译器版本以此为准。
*/

题面老哥 \times 2

66ccff

不过禾念的发挥今年依旧稳定。

const int inf=0x66ccff66ccff;

注:该选手 #define int long long 了,所以没有因此挂分,大家无需惊慌。

//const int luotianyi=0x66ccff

AKIOI

米哈游 及 米家游戏

// I want to play Genshin and Star Rail!
// I want to play Genshin and Star Rail!
// I want to play Genshin and Star Rail!
// I want to play Genshin and Star Rail!
// I want to play Genshin and Star Rail!
...(省略 36 行相同内容)
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!
// I love Furina!

芙芙可爱捏\~

love 520

love 主要是 love ccf 贡献的。

520 也许是今年 T4 数据范围 500 的缘故。

SD-S01101 T2 代码节选:

//T2大样例4一直输出5206997190
//还520???我一点都不爱T2大样例4 
//18:00找到hack了 
//但调炸了

奶龙相关

今年表现不如去年啊()

人杰地灵

部分知名人物

/*
...
kkksc03 请助我 ak csp!
luogu 请助我上人类迷惑行为! 
(有没有发现这个和我J组t2的字符画一样?答案就是:) 
我的J组准考证号是 SD-J01509,欢迎参观那里的人类迷惑行为,编者们!
我的 luogu uid 是 1099109,欢迎关注,必定壶关!
对了,这是我的退役之战(或许吧),但愿不要 AFO。 
顺便,我能表达一个小小的请求吗?就是如果编者大佬们看到我的人类迷惑行为,
请别忘了把他记录到您们的文章里,我会来认领并感谢的! 
*/

@zhangyu123456

必须安排~

其他

真就病急乱投医了是吧?

求生欲极强组

一些试图火力覆盖关键词的选手。

//ccf //freopen luogu 114514 rp++ 
/*闲话
我是@__CrossBow_EXE__,上午我在SD-J00628.
依旧请关注
__CrossBow_EXE__
wangyiqing_DOCX
__Alex866__
RealDream
ED_Builder
star_field
kkksc03
chen_zhe
_UniqueGirl_
yzm0315
Gryllsb
谢谢 
//freopen
//feropen
IAKIOI
求上迷惑代码大赏
上午340pts应该有了,看下午怎么说
广告:请 
*/

@__CrossBow_EXE__

安排 ~

//freopen
//love
//ccf
//mihoyo
//yuanshen
//fopen
//xuhuangliuqiang

《虚晃六枪》

秋日绘版

SD-S00033 T4 代码节选:

/*
    ***
 *  *   *
  **  *  *
 **   *   *      duck
* *       *
  *       ***********
  *       ***      *
  *          *    *
  *       ***    *
  *********************************
        ********      ******
    ***********************      **
    **      ***           *********
  *********************************
  */

可爱捏 ~

SD-S00495 T1 代码节选:

/*
--------                  、    |
|   ,                   ---- |--|--|       
| |---|                   /  |--|--|
| |---|                  /|  |--|--|
| |---|                   |     |
|  .|.                    |     |
*/

SD-S00495 T4 代码节选:

/*

      ^^^^^^^^^^^^ 
     (   。    。 )
      |         |
------|         |-------()
      |         |
      ----------
      \         \
      \         \
      |         |
*/

SD-S00999 T1 代码节选:

       ____              ____   ____   ____      /
     /    /  /    /    /      /      /    /     /
    /    /  /  /      /      /      /    /     /
   /____/  / /\      /      /____  /____/     /
  /    /  /    \    /           / /
 /    /  /     \   /____   ____/ /          .

SD-S01264 T4 代码节选:

       CCCCCCCCC     CCCCCCCCCC      FFFFFFFFFFF 
       C             C               F
       C             C               F        
       C             C               F
       C             C               FFFFFFFFFFF
       C             C               F
       C             C               F       
       CCCCCCCCC     CCCCCCCCCC      F

SD-S01524 T4 代码节选:

CCF CCF CCF CCF    CCF CCF CCF CCF     CCF CCF CCF CCF         is    is is is is
CCF                CCF                 CCF                           is
CCF                CCF                 CCF CCF CCF CCF         is    is is is is      
CCF                CCF                 CCF                     is             is
CCF CCF CCF CCF    CCF CCF CCF CCF     CCF                     is    is is is is  .................

@czx6666

SD-01619 T2 代码节选:

/*
     A            FFFFFFF      OOO
    A A           F           O   O
   A   A          FFFFFF     O     O
  AAAAAAA         F          O     O
 A       A        F           O   O
A         Away    F     rom    OOO  I
*/

祝好。

SD-S01621 T1 代码节选:

因为一些原因,不能显示,请自行进入代码查看。

SD-S01624 T1 代码节选:

/* 连这个都不会该怎么办
  [||||]    佛祖 
   \__/   
   /  \   
  /    \  
 /______\  
 */

迷惑言论

出现下列中多个的按小标题顺序取第一个。

歌词默写

SD-S00436 每程序节选:

//*Some strong music rings...
/*
Today is 20251101.
The code is by XYM!!! 

...(省略 AC 时间和样例)

*/
//We are strange to love.
//You know the rules and so do I~
//
//Never gonna give you up.
//Never gonna let you down.
//Never gonna run around and hurt you.
//Never gonna make you cry.
//Never gonna say goodbye.
//Never gonna run around and hurt you.
//
//luogu UID 1433474,luogu name Meng_Xiangyu
//I AKed CSP-J this morning. 

@Meng_Xiangyu

歌词出自 Rick Astley 的《Never Gonna Give You Up》。

第一句原歌词是 We are not strangers to love.

SD-S00173 T4 代码节选:

//2025.11.1 17:41 100+72+30+24=226
//Is it enough?? I am too vegetable.
//I think SD-S01020 is going to AK.
//芳园何青青 桃李正葱茏
//水中镧化九百钼 Mo900LA.H2O

@lzdll

歌词出自省实验中学校歌《芳园何青青》。

SD-S00376 T4 代码节选:

//0pts
//能看懂黑板上的汉字吗
//能看见那孩子的心里吗
//能解开黑板上的算式吗
//能解开那孩子的项圈吗
//我是废物orz 

歌词出自镜音リンレン的《ロストワンの号哭》。

SD-S00446 T1 代码节选:

如果说 飞鸟是世界的旅客
所见打成包裹
能不能 寄给远方的你呢
风 被雨水打湿了
擦干净暗淡银河
星星和音符跳跃着 正闪烁
碎片勾轮廓 故事用梦解锁
背光处漂泊 沙砾堆砌王国
此刻 闭上眼睛跟我哼这首歌
稚嫩的白鸽 展翅浴火
点燃黎明时的绯色
此刻 任由禁锢散落 孤独褪去吧
我要在我的 朋友身侧
牵手高歌

歌词出自徵羽摩柯的《寄予你的歌》。

T2 代码节选:

/*
我们所可以自慰的,想来想去,也只是对于将来的希望。
希望是附丽于存在的,有存在,便有希望,有希望,便是光明。
……
雪地车在成千上万个地标间穿梭,可能的救援范围浩如烟海,集合所有队伍的方案却寥若晨星。
但你没时间绝望,你甚至没时间算出那个数字。
你只能算出答案对 $998244353$ 取模的结果。
那便是希望。
即便需要取模,也是光明。 
*/

歌词(?)出自洛谷 P5291 [十二省联考 2019] 希望。

T3 代码节选:

/*
才记起 副本的原则最绝情
从未有 相逢不相忘的心
我被封存在数据里 从前世苏醒
想挣开岁月 那虚无的侵袭
自定义是我 未命名是你
无关于轮回的密令
你我明知在故事里 梦醒就分离
明知相守模式尚不可沉浸
重置前的我 忘却前的你
还在等那抹黎明

可以祝我 rp++ 吗,摩柯? 
*/

歌词出自徵羽摩柯的《虚拟少年》。

T4 代码节选:

/*
船 摇啊摇
摇到陌生的远方 摇断了船桨
进土壤 长出了愿望和新故乡
我 的朋友
你在哪 是否凝望同一轮月光
有没有 成为期待的英雄模样 
*/

歌词出自宴宁、柳知萧、谢莹、陶典、孙晔、闫夜桥的《提瓦特民谣》。

原神五周年快乐!

/*
16:43 [24,24]

100+[32,48]+[0,25]+24 = [156,197]
不要挂分不要挂分不要挂分

North London Forever
Whatever the weather
These streets are our own
And my heart will leave you never
My blood will forever
Run through the stone~
COYG!

连着三次省二了,能不能来一次省一
阿森纳三连亚了,能不能来一次冠军
事不过三

去年NOIP太可惜了
因为多写一个=痛失25pts,最后离省一差4pts
能让我赢一次吗,退役之前

RP++
*/

歌词出自阿森纳球队队歌《The Angel》。

//曾经受过一些伤害 曾经有些看不开 却也担心迎接将来 怕爱再卷来 所以我已停止爱 倒也过得挺自在 我的爱 停泊在 无风的海 
//有点奇怪 天使带你来 叫我期待重新振作起来 别让自己后悔 把眼泪收回 不跟谁斗苦斗累 感谢你的出现 过去的往事就如烟 在眼前什么都不欠 你是下雨时的屋檐 那份爱没时限幸福就在我们之间 感动的模糊了视线 那憧憬的一转眼一瞬间就能实现 在有生之年
// my only girlfriend.  my only girlfriend
// 曾经有过一些时候 以为所谓的自由 是每个路口往后只有我一个人走 曾经我以为成熟 是寂寞能够承受 收紧了 孤独的 那一双手 

歌词出自方大同的《麦恩莉》。

/*
麻雀
李荣浩
山隔壁还是山
都有一个伴
相信海枯石烂
也许我笨蛋
飞太慢会落单
太快会受伤
日子不就都这样
天会晴就会暗
我早就习惯
一日为了三餐
不至于寒酸
为给你取暖我
把翅膀折断
我遭遇那些磨难
你却不管
我飞翔在乌云之中
你看这我无动于衷
有多少次波涛汹涌
在我 心中
你飞向了雪山之巅
我留在你回忆里面
你成仙我替你
留守 人间
麻雀 也有 明天

天会晴就会暗
我早就习惯
一日为了三餐
不至于寒酸
为给你取暖我
把翅膀折断
我遭遇那些磨难
你却不管
我飞翔在乌云之中
你看着我无动于衷
有多少次波涛汹涌
在我 心中
你飞向了雪山之巅
我留在你回忆里面
你成仙我替你
留守 人间
麻雀 也有 人间

我飞翔在乌云之中
你看着我无动于衷
有多少次波涛汹涌
在我 心中
你飞向了雪山之巅
我留在你回忆里面
你成仙我替你
留守 人间
麻雀 也有 明天
*/

歌词出自李荣浩的《麻雀》。

/*
野人
没有选择进入村落
所以山里是我唯一
唯一的落脚处
孤星暗火 它伴着我
是我选择的生活
再淌一次清澈的河
能够亲手摘下一次
自己种下的果
他们说 他们说
是你选择的生活
躲在山里看烟火
守着那烂泥坨
不再借世人的手
替我开脱
遍野的花骨朵
也能够耐住寂寞
怎么 怎么那么像我

再淌一次清澈的河
能够亲手摘下一次
自己种下的果
他们说 他们说
是你选择的生活
躲在山里看烟火
守着那烂泥坨
不再借世人的手
替我开脱
遍野的花骨朵
也能够耐住寂寞
怎么 怎么那么像我
躲在山里看烟火
守着那烂泥坨
不再借世人的手
替我开脱
遍野的花骨朵
也能够耐住寂寞
怎么 怎么那么像我
*/

歌词出自孟维来《野人》。

/*
离别开出花
就是南方凯
坐上那朵离家的云霞
飘去无人知晓的天涯
背着妈妈说的那句话
孩子人生其实不复杂
眼泪轻轻地擦
别管那多嘴乌鸦
咽下那些风沙
你才能慢慢长大
要错过几个她
用你最好的年华
这是青春的代价
当离别开出花
伸出新长的枝丫
像冬去春又来
等待心雪融化
你每次离开家
带着远方的牵挂
那城市的繁华
盖住了月牙
当离别开出花
它生长在悬崖
在最高的山顶
才听得见回答
没什么好害怕
孩子放心去飞吧
在你的身后
有个等你的家

坐上那朵离家的云霞
飘去无人知晓的天涯
背着妈妈说的那句话
孩子人生其实不复杂
眼泪轻轻地擦
别忘那童年梦话
散在远方的花
也随风慢慢长大
要错过几个它
用你最好的年华
这是青春的回答
当离别开出花
伸出新长的枝丫
像冬去春又来
等待心雪融化
你每次离开家
带着远方的牵挂
那城市的繁华
盖住了月牙
当离别开出花
它生长在悬崖
在最高的山顶
才听得见回答
没什么好害怕
孩子放心去飞吧
在你的身后
有个等你的家
当离别开出花
伸出新长的枝丫
像冬去春又来
等待心雪融化
你每次离开家
带着远方的牵挂
那城市的繁华
盖住了月牙
当离别开出花
它生长在悬崖
在最高的山顶
才听得见回答
没什么好害怕
孩子放心去飞吧
在你的身后
有个等你的家 
*/

歌词选自就是南方凯的《离别开出花》。

听这玩意的家里该请高人了

/*
林中鸟
葛林
来不及祈祷
就开始奔跑
总觉得外面世界有多美好
用几滴眼泪
才换来骄傲
我要的光荣哪怕只有一秒
角落太寂静
城市太喧闹
这世界很忙其实我都知道
离开了地面
就随风飘摇
决定要走遍天涯心比天高
我就像那一只
林中的小鸟
努力挣脱冲向蓝天怀抱
勇敢地张开双臂
闭上了双眼
远方离我只有一步之遥
我就像那一只
林中的小鸟
举头望月孤独有谁知道
那带血的羽毛
不向命运祈祷
远方离我只有一步之遥
来不及祈祷
就开始奔跑
总觉得外面世界有多美好
用几滴眼泪
才换来骄傲
我要的光荣哪怕只有一秒
角落太寂静
城市太喧闹
这世界很忙其实我都知道
离开了地面
就随风飘摇
决定要走遍天涯心比天高
我就像那一只
林中的小鸟
努力挣脱冲向蓝天怀抱
勇敢地张开双臂
闭上了双眼
远方离我只有一步之遥
我就像那一只
林中的小鸟
举头望月孤独有谁知道
那带血的羽毛
不向命运祈祷
远方离我只有一步之遥
我就像那一只
林中的小鸟
举头望月孤独有谁知道
那带血的羽毛
不向命运祈祷
远方离我只有一步之遥
远方离我只有一步之遥

那一只林中鸟
那一只林中鸟
*/

歌词出自葛林的《林中鸟》。

/*
思量怎向,迟回独掩青扉,斜阳犹照南陌。 
*/

歌词(?)出自徐宝之的《莺啼序》。

SD-S00683 T4 代码节选:

/*
旧乡何故久淹留,释放灵魂彼岸游。 
且看神明垂睫刻,光丝隐隐梦中流。
...(省略 132 遍相同内容)
*/

使用百度、必应及识典古籍网搜索,没有找到相关古诗词。

还是语文大佬?

SD-S00689 各代码节选:

T1:
//锦瑟无端五十弦,一弦一柱思华年。

T4:
//此情可待成追忆?只是当时已惘然。 

歌词(?)出自李商隐的《锦瑟》

我赌你是冲着追忆背的这首诗。

SD-S00689 T1 代码节选:

//写错的的话就是我记错了QWQ 
/*你也在听吗 落单的孩子啊 别害怕 别害怕 黑夜不会太长 悬崖上的花 让我为你摘下 数一瓣 落一瓣 就少一朵忧伤*/
/*是你吗 在回家的路上 洒满月光点亮花蕊 是你吗 弹奏古老和弦 赶走梦魇伴我入睡
是你吗 将头顶的雨水 编织成蓝色的屋檐 约好了 等我们都长大再次遇见 追寻梦的蔓延*/ 

歌词出自花玲、张安琪、沐霏、再见动物园合唱团的《我不曾忘记》。

SD-S00689 T1 代码节选:

/*你眼眶超载的眼泪 乘客是绝望和心碎 我可以看见↑ 你忍住伤悲 那一双爱笑眼睛不适合皱眉*/ 
/*手心的蔷薇 刺伤而不自觉 你值得被疼爱 你懂我的期待*/ 

歌词出自林俊杰的《手心的蔷薇》。

SD-S00689 T2 代码节选:

/*为你翘课的那一天 花落的那一天 教室的那一间 我怎么看不见 消失的下雨天 我好想再淋一遍*/ 

歌词出自周杰伦的《晴天》。

SD-S00689 T2 代码节选:

/*雨下整夜 我的爱溢出就像雨水 院子落叶 跟我的思念厚厚一叠 几句是非 也无法将我的热情冷却 你出现在我诗的每一页*/

歌词出自周杰伦的《七里香》。

SD-S00689 T3 代码节选:

/*情字何解 怎落笔都不对 而我独缺 你一生的了解*/

歌词出自周杰伦的《兰亭序》。

SD-S00689 T3 代码节选:

/*我遇见谁 会有怎样的对白 我等的人 她在多远的未来 我听见风 来自地铁和人海 我排着队 拿着爱的号码牌*/

歌词出自孙燕姿的《遇见》。

SD-S00689 T4 代码节选:

/*我学着不去担心的太远 不计划太多反而能勇敢冒险 丰富地过每一天 快乐地看每一天 ↑ ↑↑↓ ↓
第一次遇见阴天 遮住你侧脸 有什么故事好想了解 我感觉我懂你的特别*/

歌词出自林俊杰的《心墙》。

//无形的火 扭曲着世界轮廓
//高温线耗尽 夏日的盘中最后一滴颜色
//面对陌生的茧壳 和渺小的自我
//听到广阔 辰星银河 跑进我的耳朵 

//若痕迹都不曾亲眼见过
//若连平凡都显得像个传说
//还有什么时间惋惜惶惑
//我们约定在 光源处集合

//固执的 夏虫汲取着美梦解渴
//单薄的外壳 展开花纹 尽将内心诉说

歌词出自洛天依的《夏虫》。

山东是这样的:禾念会迟到,但一定不会缺席。

SD-S01040 T4 代码节选:

/*
啦啦啦啦啦啦啦啦
库里库里库里库里 
好吧左边那位大哥和我名字一模一样
我的运气估计转移到他身上了 
*/

歌词出自龙奔的《库里》。(显然后两行不是歌词)

SD-S01187 T1 代码节选:

/*
爆裂吧, real!
粉碎吧, synapse!
Vanishment this world!
*/

这是一段台词,出自《小鸟游六花》。

 /*
 CCF I love you  CCF I love you  CCF I love you  CCF I love you  依旧诈如骗 

 《star sky》

Here we are riding the sky

Painting the night with the sun

You and I mirrors of light 

Twin flames of fire lit in another time and place

I knew your name I knew your face

You love and grace

Past and present cannot embrace

World collide in inner space

Unstoppable the song we play

Burn the page for me

I cannot erase the time of sleep

I cannot be love so set me free

I cannot deliver your love or caress your soul so

Turn that page for me

I cannot embrace the touch that you give

I cannot find sloace in your words

I cannot deliver you your love

Or caress your soul

Age to age I feel the call

Memory of future dreams

You and I riding the sky

Keeping the fire bright 

From another time and place

I know your name I know your face

Your touch and grace

All of time cannot erase

What we hearts remember stays

Forever the song we play

Burn the page for me

I cannot erase the time of sleep

I cannot be love so set me free

I cannot deliver your love or caress your soul so

Turn that page for me

I cannot embrace the touch that you give

I cannot find sloace in your words

I cannot deliver you your love

Or caress your soul

可以听一下,很好听。 
*/

歌词出自 Two Steps From Hell 的《Star Sky》。

//sto ccf rp++ #include<bits\stdc++.h>(诈骗)

/*

《关山酒》(梦泪神曲) 

我自关山点酒 千秋皆入喉

更有飞雪灼与风云某

我是千里故人 青山应白首

年少犹借银枪逞风流 

几载风雪卷刃 朔风同孤昼

瞧得乱世 一般嶙峋瘦

塞外硝烟未断 黄云遍地愁

侥幸红梅久 不曾下枝头

长烟入怀 潦草做运筹

踏破飞沙拔剑斩仇寇

残阳暮火 春风上重楼

乱世烽火不近长安囚 

我自关山点酒 千秋皆入喉

更有飞雪灼与风云某

我是千里故人 青山应白首

年少犹借银枪逞风流 

我曾长安走马 十街任斗酒 

惊梦照烽火 今宵试新鍪

倘若魂断沙场 不见失地收 

谁共谁不朽 金戈亦染锈 

天命轻狂 应似孤鸿游

向人世间尽一副鬼谋

纵意而歌 玉怀斟北斗

河山万里 愿与君同守

我自关山点酒 千秋皆入喉

更有飞雪灼与风云某

我是千里故人 青山应白首

年少犹借银枪逞风流  
*/

歌词出自小魂、痴笑的《关山酒》。

//为了你唱下去
//Blessing for your everyday
//夏虫展翅向灼热光明 
//你是我万分之一的光 那么闪耀
//快去玩魔法少女的魔女裁判 

前四行分别出自:

大杂烩是吧()

SD-S01523 T4 代码节选:

//我相信,会再次看到蓝天;鲜花,挂满枝头。

歌词(?)出自电影《流浪地球 2》。

/*我们你所可以自慰的,想来想去,也还是所谓对于将来的希望。

希望是附丽于存在的,有存在,便有希望,有希望,便是光明。*/

@快速数论变换

歌词(?)出自鲁迅的《记谈话》。你也可以认为它出自洛谷 P5291 [十二省联考 2019] 希望。

参赛游记

SD-S00019 T4 代码节选:

/*
14:32 开题
14:34 T1 看起来是简单题
14:35 T2 最小生成树变式? 
14:36 T3 为啥是串串
14:36 T4 先不看了
14:42 T1 直接反悔贪心 
15:13 孩子们我是唐诗,现在才过 T1
15:15 感觉有些神秘,如果有时间考虑拍一下,先不急
15:21 T2 直接状压可以获得 64pts 唐诗分,考虑先看看后面的题 
15:26 润回 T2
15:32 我现在会除了正解之外的所有特殊性质与暴力
15:36 猜测正解复杂度,考虑 O(2^k*n+m) 状物 
15:46 会 T2 了!我是唐唐:

考虑 O(kn2^k) 做法:直接枚举选择状态,然后保留不选任何颜色的 MST
接下来再把 O(n|S|) 条边加入 MST,直接暴力求即可

然后你发现你只需要保留去掉某个颜色的 MST,就可以让边数变成 O(n) 

这样时间复杂度 O(n2^k) 空间复杂度 O(nk)

还有两个小时四十分钟,优势在我

16:13 这样例为啥不是 12()
16:15 哦这个是乡镇不是城市()还好改的东西不多
16:21 好消息是过了,坏消息是第二个样例跑了 0.9s
16:25 byd 所有样例 n<=1000
16:30 极限数据 1.8s,需要卡常 
16:58 过了 T4 8pts 暴力 
17:57 现在 100+80+?+12 的傻逼分,非常不牛,我必须搞出来 T4 m=1 12pts 
18:10 活一点了但是没啥用:( 现在是 204pts
*/

@Double_Light

SD-S00032 T2 代码节选:

//14:48 begin
//14:57 realize what I need to do
//15:1? find out Union-Find Set is wrong
//15:18 pass examples
//generate bigger(m = 1e6),if C is too hard
//O(2^k k^2 n)?but too hard to get the limit,0.5s in ex3 and 0.3s in ex4

为啥我就找不出来 Union-Find Set is wrong 呢???

我还是太菜了。

SD-S00032 T3 代码节选:

/*
a l2sqrtl1,but eqaul to brute
why no pts for this?????
barrier is that we need to find s on every positon on t,and it may become qn,that's what I dont want
another sol is qL1,we can seperate out the inequal part and use kmp to search it on s.
every pos it be found we can check it's the answer or not.
in this,we can find out that answer is lessequal than n,useful???
in total i have got 50pts now.
mentioned that the beginning position must on the left side of the part
then we can make the brute have a 1/2,useless!
I need to work it out!!!
why brute is wrong?????????????????????????????????????????????????
Only eps pts
*/

笑点解析:《CCF 没卡根号》

SD-S00051 T1 代码节选:

/*
Wake up!
What should I do now?
Could I see the blossom? 
But now I may find you.

Why T1 so hard!!!!!!!!

45min.
*/

SD-S00478 各代码节选:

T1:
    //14:38看完所有题面,感觉有点完蛋 
    //14:47好像有点思路,贪心吗?
    //当一个社团满了另外两个社团一定没满
    //对于i,我贪心的把他放到他最喜欢的社团
    //如果没满我一定可以把他放进去
    //如果满了我就考虑二选一
    //14:51感觉出来了,写一写 
    //14:54不知道哪里在放歌,好神秘 
    //15:06草我好像不会优先队列的结构体 
    //15:09让我想一个奇妙方法 
    //15:37终于过了全部样例,严格不爆ll我就不开了 
    //谢谢你ccf

T2:
    //15:42严肃思考,感觉是最小生成树
    //15:46输出0有32分??
    //15:49有点不行了,有点晕
    //15:51不对,性质A不是输出0,让我看看这个性质A是给什么的
    //15:54纯MST有16pts,利用乡村缩点后的MST有32pts
    //16:09咖啡喝完了,没有任何食物
    //16:15主要性质好像在村庄上啊,那我k轮最小生成树有没有说法
    //16:42我好像有了一个O(m log m + 2^k nk)的一个想法
    //原图跑一边最小生成树,求出当前的答案
    //对于所有的村庄选择方案进行枚举
    //如果我选择了某村庄,则我对于(i,j)连了一条权为a_i+a_j的边
    //尝试用这个东西去更新最小生成树上的边
    //判断最后答案是否能更新
    //等等,这玩意真的对吗
    //16:51先写暴力 
    //17:18草草草 我的关于性质A的想法好像是错的 
    //谢谢你ccf

T3:
    //ccf我求你了 

...

    //15:57给了2G的空间,感觉数据结构大手子要发力了 
    //16:07好像有个20pts的做法,但感觉很难实现 
    //16:15有一个25pts的hash,但我做不完了。 
    //谢谢你ccf,

T4:
    //谢谢你ccf

    cout<<0<<endl;

    //16:08神秘计数??

感恩的心 \~ 感谢有你 \~

SD-S00093 T2 代码节选:

//没复习最小生成树 我真开心 

你和 00904 组一队吧。

SD-S00137 各代码节选:

All:
/*
总结:
A题(club)可能有部分分;
B题(road)暴力都不会; 
C题(replace)暴力没调完; 
D题(employ)特殊性质A应该能过; 
应该不会爆零了。
2025.11.1
*/

T1:
/*
15:45 1h 15min 调不出来。 
16:07 调出第一个样例。
16:13 样例全对,但第五个1.8s(时限1s)。 
    感觉要超时啊/(ㄒoㄒ)/~~ 
*/

T2:
/*
16:10 开始做题。
16:46 一点思路都没有。 
16:58 决定写特殊性质A。 
17:27 没写出来,样例都没过。╥﹏╥... 
    感觉这题要爆零了 
*/

T3:
/*
18:24 完了,暴力没调完。
*/

T4:
/*
17:46 本来已经放弃希望,忽然看到特殊性质A。 
(~ ̄▽ ̄)~ 
*/

SD-S00269 T2 代码节选:

//ALL FOR MYSELF, NOT ANYONE ELSE

//Prim怎么写啊啊啊啊啊啊啊啊啊啊啊啊啊
...
    //似乎用不了Kruskal(可发现仅需要城市连边,乡村甚至可以不连,故我们使用Prim) 
    //但是***d我**忘了Prim咋写了 
    //Kruskal吧(错就错吧) 

SD-S00311 T2 代码节选:

/*
我好像有点死了
我上早八
能不能给个省2 
*/

SD-S00453 T1 代码节选:

//《18:24大样例过了 》 
//我要上奇葩行为大赏!!!(doge uid:999423(doge
//取关洛谷cexe喵 

@YzForNorth

SD-S00455 各代码节选:

T2:
//T1写了45分钟,我太菜了,明明是个红题的……
//希望这次能拿省一吧,为了S我付出的太多了

T3:
//我太菜了,T2写了将近两个小时,花费的大部分时间是把这道题当最短路做了
//更奇妙的是,我过了全部大样例,但我自己都知道我这个代码肯定是错的,所以T2预计0分
//哈哈哈哈T3暴力都不会,我是奶龙

加入哈希神教,就不会出现这样的问题了!T3 三模哈希 O(nq) 暴力只需不到 20 分钟就可以拿下 50 pts!调题?不存在的!

SD-S00545 T2 代码节选:

/*
14:55
朱祥瑞,***个乌鸦嘴,还真**考图论了 
*/

你但凡考前看一眼真题计划也不至于这样,你说是不是

其实是写真题计划的人猜到要考图论也没复习最小生成树。

SD-S00564 T3 代码节选:

// 这个题大概用的 KMP 吧
// 16:44 更新状态:不会放弃。
// 17:17 更新状态:不会,放弃。

SD-S00655 T1 代码节选:

    //luogu 1938765
    //孩子们一定记得带笔
    //不然到时候有你哭的
    //这非常重要,请勿忘记

    //15:16
    //我是飞舞吗 T1连暴力都不会打
    //现在还是没调出T1
    //算了去看看T2 
    //15:46
    //我怎么连最简单的dfs都不会了
    //我的原神uid:785311691
    //cnmd傻逼米哈游你妈死了
    //不知道自己写的傻逼游戏多么肝
    //新号没外挂根本没法玩累死了
    //凭啥封老子号 
    //16:00
    //完了这下真的要爆0了
    //16:29
    //全完了 
    //16:49
    //...
    //16:52
    //比起代码,我还是更关心我的原神账号 
    //17:00
    //很慌,很累
    //想回家
    //这一考场基本都很强 
    //我真的不会啊我真的不会啊我真的不会啊
    //17:36
    //还有一个小时就可以回家了,好耶 
    //17:51
    //压力有点大钢雷 
    //18:18
    //再见

@Aurora_AC

官服玩家实名嘲讽。

SD-S00687 各代码节选:

T2:
/*
我不会最小生成树...
我也不会暴力
特殊性质也拿不到分...
考场上还有个嘉豪,烦 
希望明年可以初中生放在一个考场,高中生放在一个考场 
这是我第一次S
我不想保龄 
*/

T3:
/*
暴力都不对

我的手在发抖
现在一个都没做出来... 

算了,晋级榜上看不到我希望可以在迷惑行为上看到我... 
冷静
*/

T4:
/*
这次就这样了,无力回天
希望明年能见到不一样的我 
*/

希望明年能见到不一样的我。

SD-S00694 T2 代码节选:

//T2: problem2 / road
//一道比较《水》的题目
//要求还是不高(代码多亿点) 
//还真就应了 sto_lxl_orz 了
//《梅开二度》 
//T1真 ** 就黄色水(s**t, 744)题 
//快!边做 T1边想 T2!!! 
//好了,T1 即将结束 15:57 
//16:00 T1 End
//16:27 T2 启动!!! 
//18:04 成功了? 失败了? 
//不是 CSP-S T2 就这么《水》加书名号 at 17:22 
//放个带超大常数的最小生成树就能《水》**过去**(好像真能 A 就是会有 RE 风险)
//堆排序水题一道 
//18:12 结束了......
//一切好像不会结束了。 
//加油啊,少爷机!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

又一位押题大师@sto_lxl_orz

这里科普一下为什么少爷机也跑不动。

根据题面,评测时使用的机器是英特尔® 酷睿™ Ultra 9 处理器 285K,关闭小核和睿频。在英特尔官网搜到的信息如下:

也就是说,评测时即使一个内核只跑一个程序,速度也不过 3.70GHz。而即使是机房的机器(我们机房使用了 i5-6600,这已经是相当老旧的 CPU 了),也有 3.30GHz:

所以速度差距没有想象的那么大。

至于为什么前者贼贵,因为一个是它应用了各种技术(比如大小核和各种睿频加速),但评测时用不到。

而且本来在接近尖端的时候单位程度的提升所带来的价格增长也会放大。

SD-S00729 T1 代码节选:

// 给我,破!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// 18:14:看到最后一个大样例过的时候,我内心反而十分平静 
// 起码不用 afo 了吧,应该吧应该吧 
// freopen 
// 100+48+[0,100]+8=[156,256],还没去年高呢,希望 T3 总司令能多给几分吧 
// 不过今年是不是难一点啊也不知道
// freopen
//freopen
// freopen("club.in", "w", stdout);
// freopen("club.out", "r", stdin);
// 18:19 再想一下 T3 部分分吧 
// 好吧脑子已经烧没了,所以还是得 afo 吗
// 所以总司令还会送 45 分吗
// 能不能多送点分啊,孩子快 afo 了呜呜呜 
// #include <bits\stdc++.h>

总司令没给……

SD-S00740 T4 代码节选:

/*
xian zai hai mei kai kao,wo jiu yi jing po bu ji dai de
xie xia le zhe duan zhushi

xian zai yi jing shi 18:04 le
wo de xin qing shi fen gou shi  
dao bu shi shuo wo zuo le yi dui gou shi 
(shi ji shang wo jiu shi zuo le yi tuo gou shi ,
dan wo de yi si shi wo bu shi yin wei wo zuo le yi tan gou shi xin qing bian gou shi de)
er shi yin wei wo fa zi fei fu xie le yida duan hua wang bao cun le
qi si wo le 
wo xian zai yao nai zhe xing zi hui xiang yi xia,zai xei xia lai:

wo mei nai xin xiang le 
fan zheng da gai jiu shi gan xie le yi dui ren 
ran hou jue de zhe ci kao ~120
ru guo wo you xing(xing yun de xing)qie you qing(qing xv de qing) wo hui zai NOIP hao hao zai xie yi bian

xi wang neng hun ge 3=

gan xie na ge zheng li mi huo xing wei da shang de ren 
ma fang ni ba zhe yi da duan wen zi xie cheng han zi
From luogu @Shiro_Zhu BCMS ZhuXi
ling : bi wo cai de bi wo qiang de gen wo shui ping cha bu duo de dou AK CSP
hai you ,wo bu xiang ding ge lv gou tui yi 
lai ge blue
blue
blue
blue
blue
blue
blue
blue
blue

dui le ,wo hai yao tu cao yi xia,wo de da zhou mei le .

hai you,zhe shi wo di yi ci da CSP-S
*/

@Shiro_Zhu

就在刚才……

  • SD-S00740 T4 代码节选:
//    freopen("employ.in","r",stdin);
//    freopen("employ.out","w",stdout);

8 分。

你说你但凡写这些之前往上瞟一眼是不是?

不过 100+ 在山东二等还是大大的有希望的。

SD-S00893 各代码节选:

T1:
//luogu Lament_Rain 1157620 
//freopen
//.ans
//如果我能去NOIp的话我会带着我的拉面雨的( 
/*
T1
这是可以贪的吗
猜一手 
15:48 切A ?
except 100 pts
*/
...
//摩耶,一。 
//如果哪天有人发现了这本日志,它存在的意义便是你。

T2:
//freopen
//.ans
//没有思路 打暴力了 
//???
//删了个log怎么跑飞起来了
//大样例跑0.6s??? 
//数据水了吧 kru神力? 跑不满?
//复杂度是 O((m+kn)*2^k*a(n)) 啊 极限是 >= 2e9 的 
//神机加油  放过我( 
//by Lament_Rain in 17:09 
//发现因为打的是暴力拍不了(
//哦原来不是极限数据啊
//那我寄了 excpet 75pts

//呱 差点没删注释 
//in 18:24
...
//摩耶,八。 
//我知道我的感受,我明白这都是我的错。 

T3:
//freopen
//.ans 
// 不学KMP 根本______
//不会O(n) 匹配 寄了
//暴力好像有点困难
// 性质B可做吗 except 25
//不会做 excpet 0
...
//摩耶,四十二。 
//这里的时间流逝与Arcaea的不同,听起来像是时间膨胀。

T4:
//freopen
//.ans 
//1-2 暴搜
//3-5 状压
//m=1 and m=n looks able to solve
//性质A 看起来结论很显然
//打一手 
//不会
//寄 
//except 15 pts
...
        else cout<<0;//不可以,小Z 
...
//Maya,一零八。 
//谢谢你回应我的呼唤。

@Lament_Rain

打引诱打的。

SD-S00904 T2 代码节选:

//xian da yi bian mst de banzi
//wo yunqi feichang cha wangle fuxi mst le 555

SD-S00913 T3 代码节选:

/*
The sky is getting darker, there is only tapping keyboard sounds. 
There is water on my face, I don't know if it is sweat or tears. 
Oh, it looks like I'm going to dye here. 
I think I can only get 25+16+0+0.
It's my first CSP-S, why is it so hard?! (2025.11.1 18:07)

Please give me some pts, please.
*/

其实这次除了没有送分题,总体难度是中等(将 NOIP 纳入比较的话甚至偏下,当然 NOIP 的题难一些)的。

SD-S00934 各代码节选:

T1:
我无力吐槽这个键盘了

T2:
/*
think twice,code once 

需要对拍 

大样例不满?!

被卡常惹 

what can i say
开了一小时常,瓶颈是输入 
*/

T3:
//寄! 

T4:
/*
我太没用了 
baka
*/

SD-S00945 T4 代码节选:

/*
16:58 finished.
*/

注:这个不是@strapplE。

你是人?

/*又只剩下10min了,倒闭了,再见吧,估计没有一等了 */

SD-S01024 T3 代码节选:

        // 虽然它样例 3 跑了 117.1s
        // 但是他对了
...
// #include<bits\stdc++.h>
// 不敢笑 前一个坐我位置的真这么写的 

中午没还原机器???

SD-S01035 各代码节选:

T1:
/*
好耶 终于做出来了 看来上厕所大法是管用的耶

oiiaioiiai 
*/

T2:
/*
图论:
题目翻译:给定一张n点m边的无向连通图 求 *原图* 最小生成树的边权和
        特别的 
                在本题目中 可以选定任意j<=k个图外点,用cj代价加入图中 用 aij代价与第i个原图上的点建边 
*/

SD-S01069 每程序开头:

//我去电脑20分钟蓝屏一次,心态炸了呀

依稀记得 CSP-J2 2021 我们考场突然蓝了一半。

虽然没有我。但是我现在很菜那会比现在还菜所以打萎了。

SD-S01097 T4 代码节选:

/*
有点绷不住

感觉今天本来开局很好,结果自己糖丸了

A秒了

B秒了,忽然发现复杂度假了,然后1e-9秒想到了正解,但是因为犯了堂错,一度以为自己写错了,最后1h才发现问题

C写了一坨,以为自己被卡哈希了,结果发现是长度超过了

D写了24就滚了

100+100+[50,100]+24 =[274,324] 
*/
//第一次参加CSP-S,现在已经绝望了
//期望得分:|_100'_|+|_20'_|+|_10'_|+|_8'_|=|_138'_|应该能二等吧
//希望期望得分是对的
//上午考J组的时候离结束还有10分钟时发现T2的O(1)的结论写错了
//改完刚测完样例就结束了,没自己对拍 ,希望后来改对了
//上善若水,人杰地灵
//不是,考试还能玩浏览器的断网games?这哥们牛逼 

第一次打这个成绩很不错了。如果没挂分的话(我没测)你打败了我校高一级部的绝大部分选手。恭喜。

T1:
/*
14:41 读完题且有思路 
14:58 写完代码但样例1没过 
15:06 调过样例1,是边界没处理好,样例2又没过……发现可能是清空没清空好 
15:11 我是傻子,我clear函数没调用( 
15:14 样例3居然单点了一个0?!!破案了又忘记初始化数组大小了 
15:16 样例4的第4组数据没过。。。 
15:26 发现是忽略了两项甚至三项喜爱度同为最大值的情况,更改后通过样例4
15:27 样例5顺利通过(此题真是每个样例都起到了它的作用) 
*/

T2:
/*
15:32 读完题,这不就是 kruskal 板子吗?!!
15:41 写一半了感觉不太对劲。。。决定重构写特殊性质 A,感觉可以用并查集 
15:43 刚删掉代码突然又有了正解思路。。。Ctrl+Z。。。 
16:05 码完了,但 WA 样例 1 
16:09 题面好阴间,发现样例里城市化改造后的 1 还要和自己建设一条道路 
16:12 哦我去理解错题面了。。要重新理解了。。。跟去年的 T2 一样的题面抽象。。
16:26 决定改成朴素的 kruskal 先拿下特殊性质 A 和 k == 0 的 48pts 
16:30 孩子们我没招了我修路花费的比答案少。。。 
16:39 没输出了。。。 
16:44 上了个厕所,吃了个薄荷糖,开始手搓样例 
16:50 下标从 m 往后越界了。。现在应该没什么问题了 
*/

T3:
/*
17:12 推了一会儿 T4 的 dp 式子发现没什么思路,所以先来写 T3 的 特殊性质 B(整整 25pts!!!) 
17:39 忘了怎么用 fc 了,人眼比对了一下几百行样例 4 应该过了,就当 25pts 到手了吧 
*/

T4:
/*
17:05 读完了 T3T4 都做了充足的思考之后,感觉 T4 正解是 dp,决定先写 T4(感动我终于把输入法改成双拼了)
17:11 感觉有点卡壳,还是先写 T3 吧 
17:40 T3 特殊性质 B 写完了,来到 T4 推式子
17:46 带的薄荷糖都吃完了(悲)
18:03 推正解的话时间来不及了,只能先推特殊性质了 
18:15 推特殊性质 A 正解后发现自己读错题了,没看到 “被拒绝或放弃”,没时间了没时间了好慌 
18:22 写了一个 n==m 的特殊情况,4分也是分 
18:27 又写了一个 m==1 的特殊情况,但是没调过样例 4,没时间了真的没时间了。。。 
*/

@Trubiacy_

fc 命令的使用方法是直接 fc <name1> <name2>,其中 <name1><name2> 是你要对比的文件名。如果需要显示不同的行号,则使用 fc /n <name1> <name2>。文件名中带空格的情况外面打英文引号。

SD-S01146 每程序结尾:

/*
CSP-S 2025 游记(?)
writer:luogu uid 941672
本人是一只阔耐的猫猫!欢迎各位猫猫来洛谷rua我喵!支持蹭蹭、贴贴、揉揉、抱抱滴喵!
喜欢玩Phigros,Ranking Score 16.77(ver 3.16.1,还没打大师赛决赛曲)。
希望做“CSP-S 2025 SD xx行为大赏”的能够发现&宣传本文。

--------------------------------不怎么华丽的分割线--------------------------------

14:08 来到考场,机况正常,但是太阳正好照着我这个位置。
14:11 我尝试拉上窗帘,但是窗帘有缝隙,正好沿着射线方向照着我。
14:17 写好了4个源文件,开始写游记。
14:19 宣读考试规则。
14:23 考试规则明白单签名。
14:29 公布密码(人杰地灵何意味。)
小小一个45人的考场,竟然有7个女oier,有点稀奇。
15:07 切掉T1(贪心+堆)
16:31 切掉T2,但是极限数据跑了0.97s(MST + 枚举)
不知道CCF给不给过O(mlogm+2^k(nlogn))
卡常过后,大样例0.9s
太阳没那么强了

16:36 正式开T3
17:51 终于调完了T3的25分暴力
哈希神教万岁!
STL大法万岁!
18:18 哇哇!233分全敲完了!检查!
吾日三省吾身:main是int的乎?return 0写了乎?文件和文件夹名字对了乎?
自我估分233(100+100+25+8,应该就在一等线上eps了)
*/

@hehejushi

《233pts 卡一等线》

少说点批话行不行?

以及 rks 16.77 是人类?

    //我就是上午不会整活但还想上迷惑行为大赏的那个
    //预计100pts+16pts+10~20pts+8pts = 134~144pts 
    //      如下 
    //所以那些 CPP里全是暴力代码,没有注释
    //明年再见吧
    //第一次考 CSP-S,后几个题我毫无头绪
    //做成这样就还是挺失落的
    //但感觉也寄了
    //感觉没有DFS我连那些暴力都写不出来,我是fw
    //虽然山东是竞赛中弱省

同样,第一次这个成绩很不错了。恭喜。

根据去年我手工统计的队线数据,山东的 OI 不是中弱省而是中强省,可以排到第二梯队(如果分为五个梯队的话)。

/*

18:28
要结束了吗 
我尽力了... ,真的累了 

*/
/*
先诈骗一下嘻嘻

//freopen feropen froepen freeopen frepoen 

freopen ("club.in", "R", stdin);
freopen ("club.out", "W", stdout);  

初二蒟蒻第一次考csp-s。

预计得分:

60+64+25+8=157pts 燃尽了

第二题还给我卡了,第三个大样利一直在0.99xx ms到1.0xxx ms 之间徘徊(什么都没改)

第四个大样利直接不对

woc,我第二题好像解法有问题 现在只有44 分了 

只有137分吗。。。没事,下次努力吧

别告诉我137分连2=都没有 我感觉可能1= 

整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活整活 

球上迷惑行为大赏QWQ,其他三篇代码也是 

luogu uid:787512(很菜的蒟蒻,非luogu名字)

王者名:秋月(可加好友,名字不含括号和括号内的内容) 

祝在座的各位把把出刀 把把顶级!

         A                  FFFFFFFFFF               O O O        
        A A                 F                      O       O
       A   A                F                    O          O
      A     A               F                   O            O
     A       A              F                  O              O
    AAAAAAAAAAA             FFFFFFFFF          O              O
   A           A            F                   O            O
  A             A           F                     O        O
 A               A          F                       O  O O      I
A                 A way     F        rom       

xjhichliebedich 

CSP-S 2025 邮寄

## 10/31 

上了 $G3170$(火车)前往日照,约 $13$ 点到达。

和同学两位 bro 吃了铁板烧,约好一起打游戏。

回山外文元酒店。一个 bro 订的亲子房,和我与另一位 bro 不同楼层。

回房间大约 $16$ 点,接受木琴思想教育半小时。

另一位 bro 已经睡了,只能自己玩 QWQ。

醒了之后去找 bro 玩了一会儿,然后吃饭了。 

然后去史迹。另两位 bro 都是要么只考 J 要么都考。先走了。

我去史迹碰见了两位 bro,都考的那一位说去了就能史迹。

拿上资料跑了个400,问题不大。一分半吧,不是很快,状态不好。 

回来之后木琴失踪了。上前台打电话。木琴强忍怒火。

回房间继续接受半小时思想教育。

## 11/1

早上起来先接受半小时思想教育(所有思想教育都是以昨天,10/31 的事儿为题材的,上下同)。

吃饭。比全季好太多了。

回酒店,打游戏。没意思。

下国际象棋。

吃饭。

大概 $12$ 点了。睡觉。

$2$ 点开始收拾,木琴太慢了。最后两点十分才走。

沿途继续接受思想教育。

考试。

T1暴力骗分。T2同。T3同。T4同。总之:四个暴力

135pts,挂了。

(剩下的回洛谷接着写) 
*/

@AA12_G

还是,第一次打这个成绩很不错了。加油。

SD-S01273 各代码节选:

T1:
//UID:1137851
//FUCK Magus CYB
//FUCK zzldd DJM 
//HAPPY

T2:
//UID:1137851
//ANGRY

T3:
//UID:1137851
//SAD

@Fwx2011 @Magus @zzldd

T1:
//club2.0
//17点01分-- 
//crx
/*

记忆化
估计得分:40

*/

T2:
//road
//16点38分-- 16点48分 
//crx
/*

提交本 
估计得分:30

*/

T3:
//replace
//16点53分--17点01分 
//crx
/*

KMP 

估计得分:0

*/

T4:
//employ
//18点13分-- 18点15分 
//crx
/*

估计得分:10

*/

SD-S01320 T4 代码节选:

//记录篇 
//14:18 吾日三省吾身 
//抽象大赏我来了。
//luogu uid 592463 
//14:27怎么还没有密码?
//不是哥们。
//压缩包密码:Ren5Jie4Di4Ling5%
//14:37 T1维护最大值和次大值的贪心,感觉很有正确性
//14:57 A done. 感觉绿。大样例0.2s。
//15:03 感觉B像是一个预处理生成树 然后跑状压的东西,精细实现一下。
//1s时间很不够用啊。
//T3感觉像ACAM 我不会。。。
//15:34打打T3 20pts 暴力。
//16:44 200都不一定能上了
//原地退役.jpg
//100+[64~80]+10+12=184 进步4分捏。
//瘫。。。
//何意味 又是光速秒掉A然后坐牢吗。。。
//绝望了.jpg
T1:
/*
Ren5Jie4Di4Ling5%
时间复杂度: O(T n log n).
14:46 过小样例, club2 wa.
14:51 过大样例, 预期得分 100.
*/

T2:
/*
Ren5Jie4Di4Ling5%
时间复杂度: O(2^k n k log k + m log m)
14:46 过小样例, club2 wa.
14:51 过大样例, 预期得分 100.
15:50 加个剪枝跑得飞快.
*/

T3:
/*
AC automaton.
对 5e6 的树跑树剖? 有点意思.
16:30 读错题了.
18:03 通过 replace3.in/ans.
*/

SD-S01471 T4 代码节选:

/*
at 16:04
finally aked
with all the best wishes

at 17:20
4 duipais were built

try to write an overall selfeval 
but failed 
*/

SD-S01471 每程序结尾:


/*
- CONTINUE, NON-STOPPING, FOR THE FAITH
- START TYPING IF YOU DON'T KNOW WHAT TO DO
- STOP TYPING IF YOU DON'T KNOW WHAT YOU'RE DOING
*/

注:这个也不是@strapplE。

比 w*h 还快一小时,这是人类吗?

SD-S01569 T2 代码节选:

/*
Ren5Jie4Di4Ling5%
15:00 have an O(mlogm+2^k*k*n*logn) way to solve it,i think it cannot pass.
15:15 ok,ok,i have no idea,i bet O(mlogm+2^k*k*n*alpha(n)) can pass this problem.Anyway,at least 80.
16:05 done,why it gets wrong answer?
16:20 pass all big tests in 0.75s?wtf?
*/

T3 代码节选:

/*
Ren5Jie4Di4Ling5%
16:25 wtf so easy?just hash is ok or i am a (b   h)?
16:30 i understand the problem in a wrong way OvO. 
16:40 i can only solve 25pts,D first.
17:00 back to think C
17:20 i think i should start to write codes for C and D,only 249pts,sad
17:35 finisg 25pts,why wrong?
17:40 pass 25pts
18:15 i can solve 30pts now
18:25 finish 30pts
*/

T4 代码节选:

/*
Ren5Jie4Di4Ling5%
Luogu Account:Butterfly_qwq(banned) strappple
100+100+30+24=254 i think this could 1=.
16:45 only 20pts...
17:00 get more 4pts back to C
17:55 finish 24pts,why wrong?
18:10 pass 24pts,back to C
*/

@Butterfly_qwq @strappple

单调队列我,还是太强了。

注:这位和@strapplE 是校友。

SD-S01593 T1 代码节选:

//Author:ZhuHua14(luogu)
...

//trick1: 只会有一组超n/2
//15:25 solution: 先按喜好分,再处理多余
//一组超n/2处理完之后不会再出现新的超n/2 
//答案疑似不会超ll 

//16:09 大样例AP了( 
//不会拍,不拍了,应该问题不大
//ccf我喜欢你我求你了别让我挂

@ZhuHua14

SD-S01636 T2 代码节选:

//why #4 is WA.
//i almost cry out.
//hope it works, qwq.

退役感言

SD-S00058 T4 代码节选:

// wo zhen de bu xiang tui yi 

我也不想。

SD-S00201 T1 代码节选:

// die in the last OIcontest...

祝好。

SD-S00250 T1 代码节选:

/*
又是一年 CSP,多少梦想被献祭 
又 WA 又 T 又 RE,对拍拍出 UKE
初赛卡线想退役,复赛暴力出奇迹 
打表挂机骗省一,极限翻盘化游记 
神犇大佬的博弈,小 A 小 B 玩游戏 
Dij SPFA KMP,正解无处寻踪迹 
借助线段树之力,留下汗水的记忆 
算法世界去寻觅,蒟蒻抬望深蓝题 
金钩碾压 std,我的代码 MLE 
红黑 AK Div.1,我被 CF 当人机 
抄袭题解棕名祭,文件搞错爆零祭 
被卡失去 1= 祭,讨论对线禁言祭 
几发宣团无意义,也曾卡过评测机 
杨花落尽子规啼,题解未审心底急 
泪水盈满眼眶里,心中不甘憾别离 
OI 生涯的记忆,如诗如画如追忆 
终于调出大模拟,提交 AC 的惊喜 
考场键盘的敲击,机房蒟蒻的传奇 
曾以往昔,Hello World 多新奇 
终究退役,Goodbye World 意别离 
AFO. 
*/

歌词估计是原创的,没找到。

SD-S00430 T4 代码节选:

//freopen()
// 暴力打满,跑路
// uid 704139
// 膜拜 UG,COB,Fwb
// Afoed
/*
祝各位巨佬进入省队

祝 kaka 和 anll 白头偕老

我常常追忆过去……

希望能上迷惑行为打赏 
*/ 

@OIer_sundingjia

SD-S00689 各代码节选:

T1:
/*注:她指OI 
她值得被疼爱。可是,我什么时候真正疼爱过她呢?
whk像一只手,无情地把我们俩拨开 。*/

T2:
/*这大概是我送给你的最后答卷了。从此以后,我们便再无来往。
我大概会忘了你吧。不过,在那之前,你永远是我的白月光。我们有缘再见。*/

T3:
/*注:她指OI 
"要走啦"
"嗯"
"这个给你。"我把一块U盘递给了她。
"里面是什么?"
"所有WA掉的代码,所有超时的梦想。"
但事实上,里面只有一句话:我遇见你,是最美丽的意外。这一句,可抵千言万语。 
我噙着泪,向她挥手道别。她那灿烂的笑还留在脸上,也永远印在了我的心里。
(都给我去看我的AFO记!!! 
*/

T4:
/*她是很特别的。她是五大学科竞赛中参加人数最少的一个,也是最不被重视,认为与whk相差最远的一个。
是,说的在理。可我偏偏爱上了她。
热爱,可排万难,可破万险。
我曾说要陪你到永远,可是我却率先食言
刚刚相见,转眼就要相别了*/

@Nahia 可以把你的 AFO 记发到评论区里。

其实 OI 对课内的帮助不是最小的。化学和生物更小一点,因为是负的,在他们眼里课内的东西全是锅。

愿你能保持对 CP 的热爱,带着这份热爱继续向前。祝好。

SD-S00792 T1 代码节选:

/*
最后半个小时,没有奇迹了
我真的不理解,真的不理解
为什么,为什么 
我这半年都在干些什么
为什么这么一道黄我都写不出来
为什么我什么都不会
我考试前两个点都在干什么
为什么每次平时刷题都很正常却一到考试就会全线崩溃
为什么动态规划就是学不会
为什么明明已经打了那么多场比赛实力却一点进步没有
为什么一直在退步甚至不如半年前的自己
为什么

...

那些执念该放下了
再一味坚持下去whk和oi都不会好 
就这样吧,25+16+0+10
退役(2022.5.31-2025.11.1)

想出来了,没时间写了
哈哈 
*/

祝好。

/*
我不会AAAAAAA!
怎么这么难啊!!!!!!
坠机!!!!!!
搞不好要AFO了朋友们
祝我顺利QAQ
球球了让我进一次NOIP吧…… 
60+16+0+0…… 
*/

不挂分的话能进。

SD-S00905 各题代码节选:

T1:
//T1 jiu bao diao le..... 
//T2 3 buhui...
//T4 10tps...
//wuaaaaaaaaaaaa
//nan yi jie shi le a
//ying gai ye jiu 20...
//OI bye bye QAQ
//2025.11.1

T4:
//T4 only 10tps QAQ
//bao diao le  WWWWWWW
//wan la

祝好。

SD-S00941 每程序节选:

/*
author: WilliamFranklin
AFOed on 2025/11/1

我常常追忆过去,忘了。 

我该在哪里停留?我问我自己。 
*/

祝好。

SD-S00959 各代码节选:

T1:
    /*
    回顾我的OI之路 
    从六年级的小学组时 T2少考虑一种情况导致挂掉30pts 300->270 一等变二等
    到初一时CSP-J2023 T2终于想出正解却忘记给sum开longlong  200->155 一等变二等 
    再到CSP-J2024 我在考前特别紧张 甚至请了两天假在家刷题  赛时T2DFS本地爆栈可是判题机给了AC T3 cout<<8 脑子抽了写成了输出所用木棍的数量cout<<7  240->200 一等变二等
    今年 山东第一次可以双报 我便都报上了名 可是初赛我却基本没有复习 只在考前做了一套信心赛的题 况且信心赛也只拿到了65的分数
    到了初赛那天 上午考J甚至涂错卡了 好在最后90通过了 下午考S莫名其妙考了72 也过了 可我却不知为什么没有想象中的那么开心
    而如今 我再次来到了复赛的考场 入门组估分295 可提高组却狠狠打了我一巴掌 或许我真的要在下一个路口转向离开OI这条路了吧
    初三了 不早了 如果考不上qdez 那我的人生还真的有救吗? 
    */
T2:
    /*
    欧文nb
    独行侠总冠军!!!
    感谢爱我的和不爱我的
    感谢我爱的和我不爱的
    感谢所有人
    感谢篮球 
    感谢一切
    ball is life 
    liyuhan , i love you 
    我想我会在迷惑行为大赏中看到我自己 
    */

人生不会因为一点失利就倒闭的。

虽然据说青岛中考压力极大,容错率 0

不如来烟台,如果不是追求裸分冲最好的高中的大实验班(而且事实上,那所高中第一次分大实验班是综合参考中考成绩和高一上期中前成绩分的,中考占比不大,而且它是文化课学校,竞赛水平一般)中考随便考考就能想去哪去哪(甚至一个停课训练两年多的选手都做到了超过所有学校的最低录取线)。

不管怎么说,祝你中考顺利。

SD-S01121 T1 代码节选:

//freopen("")
//uid:1335720 @TC_QD
//wan quan bu hui QAQ
//[61,81]pts?
//AFO.

@TC_QD

祝好。

SD-S01350 T4 代码节选:

/*
R.I.P.
-----Llm
(2021-2025)

End Time  
*/

祝好。

SD-S01469 T4 代码节选:

/*
//freopen(".in","r",stdin);
//freopen(".out","w",stdout);
freopen(".in","w",stdin);
freopen(".out","r",stdout);
feropen(".in","r",stdin);
feropen(".out","w",stdout);
I'm luogu uid748678.
Maybe it's my last year in CSP/NOIP.
Hope everything goes best.
*/

@haozhengrui

祝好。

SD-S01563 T1 代码节选:

8521987456321741596374123789512374195398746153275927529 is prime!
18:12
i'm sure that this code will get a score that not up to 20
so it's a completely lose
and i'm a eleven grade student so this is my last chance
a unperfect ending with one last duel
good luck to each oier
bye
story ending
//freopen ? 
//freopen
//freopen
luogu uid 341801
AFO

@W_SUN

祝好。

SD-S01593 T3 代码节选:

//Author:ZhuHua14(luogu)
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

//17:11 目前期望 100 + 20 + 0 + 10 = 130 pts 
//18: 13 期望得分同上。
//T2即使想出来也写不出来了。
//清理清理文件检查一波,准备交了。

//最后十分钟了,写点批话(
/*
很难想象我一个高三生会是第一次来二轮(
初四的时候过了J的一轮来着但是二轮没了...
本来高中打算老老实实学whk结果...
一个是不太甘心,再一个是有人推荐我再学学试试
于是前年一轮结束之后我才回来继续。
但是,去年一轮差一点过。。。 
这是我第一次,也是最后一次来CSP-S。 
能去NOIP对我就很好了。
希望不要挂分 
*/

加油!

做法相关

做法相关内容,比如复杂度、得分等也包含在内。

// 64pts
// 2^k m + mlogm
// da gai bi jiao du li?
// fen kai suan ji xing
// remember! : only use O(n) or O(1)
// split (u in sub_v,x in sub_y) to {add (u,x in sub_y);qry (u in sub_v,x)}

(请求翻译)

SD-S00122 T2 代码节选:

//wrong answer,don't learn me.

T3 代码节选:

//time limit exceed,don't learn me.

尽管如此,他这两题仍然拼到了共计 45 分。这再次告诉我们,写了就一定要交上去。

SD-S00173 T2 代码节选:

    //Theta 2^k n?? 
    //but the worst case it may be up to 2^k m
    //hope it can pass.
    //anyway I have at least 72 pts
    //hope the "break" can help me.
    //RP++.

这份代码通过了民间数据

@lzdll

by qqqaaazzz

key obser : 每一个替换对好像都是命中注定的一样。

在命中注定的对里面,找到真正适合我的子串数量。

查询前面有多少个串是我的子串。

AC-自动机。

有 27 种字符。

@qqqaaazzz

AC 自动机想出来很简单,但能写对是真大佬。

/*
如果要对一个乡镇进行改造,则其一定与其他 n 个点联通,否则改造是无用的 
相当于将乡镇拆成两个点做最小生成树。 
容易做到 O((m+kn)logm+(m+kn)*2^k*alpha),64pts 
特殊性质 A: 直接做最小生成树。
3:48 finish 72。
*/
/*
分配到 A 部门可以获得 a[i] 收益 
分配到 B 部门可以获得 b[i] 收益
或者不分配
一个部门最多分配 N/2 人
最少分配 N/2 人

我肯定可以把 max(a, b) 最大的 N/2 个人分配出去,并且已经满足条件。剩下的:
先把他分配到更优的部门。如果超员,就踢一个去另一个部门。这不会造成另一个部门超员。
*/

SD-S00341 各代码节选:

T1:
//16:53 find a mistake int situation B
//final 80pts?

T2:
//The simple is wrong?
//5pts?

T3:
//10pts?

T4:
//I really want to get 2= or 1=
//16pts? 
//sum=80+16+10+5=119pts?

119 一等有点难,但二等肯定还是有的。相信 SD。

T1:
//贪心,做了1.5h,感觉是人均题,唉

T2:
//打了2个小时,没想出正解,暴力严重超时,打了特殊性质40~48
//这是我第一次打csp,也可能是最后一次了
//已经初三了,csp-s还拿不到1=,可以退役了,拿到J1去考强基班吧 
//回去还得补whk,可能是我与oi无缘吧
//还有20min,去骗一下T3,T4的分吧 
//希望分数线在130~140左右吧。。。。。 

SD-S00357 T1 代码节选:

//好唐的假贪心。 
//【】调了2.5h大样例过了!!!!!

SD-S00379 每程序节选:

/*

//非常像dp
//[i]//第几个
//[j]//占几个位置最大
//[k]//被分到机组
//dp[i][j][k]
//遍历一遍其他组中
//
//先等等
//孤立地看问题
//就是背包
//
//限制:
//同一个数只能取一次
//那就分别算这个数

三个优先队列

*/

这到底是 T 几啊啊啊啊啊

SD-S00397 T3 代码节选:

//字符串函数叕tm忘了 
//花了20分钟左右来试字符串的函数,没全试出来,喜提TLE,一看测试点数据才tm10分
        // 特殊性质A 
        // 直接看每条边可不可以被城市化乡村改成两条边?
        // 但城市化乡村之间也可以连边
        // 整个优先队列每次判断一下可不可以换? 
        // 甚至不用单调? 
        // 直接看每条边 删了更优就删,加 不优就算了
T1:
/*思路
好奇怪的T1
这应该没悬念,就是一个dp
dp[a][b]表示第一组分a个,第二组分b个?这样空间炸了
开3个堆? 似乎也不对
还是想dp
dp[i][a][b]表示前i个人一组分a个,二组分b个
转移方程: 
dp[i][a][b]=max(dp[i-1][a-1][b]+a[i][1],dp[i-1][a][b-1]+a[i][2],dp[i-1][a][b]+a[i][3]); 
答案是dp[n][i][j],1<=i,j<=n/2 
全可以滚动吗?先把i滚掉 
dp[a][b]=max(dp[a-1][b]+a[i][1],dp[a][b-1]+a[i][2],dp[a][b]+a[i][3])
把a[i][3]提到外面?肯定不对 太麻烦了
孩子们我瞪出来一个性质
我们不管人数限制 全都放进最优组别 这样最多只会有一个组人数超出范围
钦定超出组别为一组 按放到别的组贡献-放到超出组别贡献排序
把前面几个放到其他组即可 
复杂度O(n) 
15:22 样例过了 
大样例全过 稳了 
*/

T2:
/*思路
一眼出思路 完全图上最小生成树
但我忘记prim咋写了。。。稍微推一下
似乎不是这样,可以先从原图上跑最小生成树 
*/

T3:
/*思路
字符串?冷门
可以哈希吧……话说总长1e7的字符串不会被卡常吗 
先把两个字符串“掐头去尾” 每个字符串都双模哈希一下 
代码又臭又长 但样例过了 
大样例1没过。。。 
*/

T4:
/*思路
*/
T1:
一个小小的背包
由O(n^4)可优化到O(n^3)
但观察值域很小
DP[i]代表价值为i,体积为DP[i]

T2:
/*
最小生成树
考虑暴力!!! 
*/

SD-S00493 T2 代码节选:

//zuixiaoshengchengshuyidianbuhui zhizaozenmezuodanzuobuchulai 0pts

比我强,你起码没有为调此题浪费时间。

/*
先做一遍最小生成树 代价 m log m
再状压 k*2^k 
每加一个点时增加 n 条边,在原树基础上重做最小生成树时间复杂度 n log n
dp[S] 表示城市改造状态S时用了那些边
时间复杂度 m log m + k*(2^k)*n log n = 1e8 可接受
空间复杂度 k*(2^k)*n = 1e7 也可接受 
*/
/*
先将每一个n中的三个数的最值求出来并进行标记,标记每一个位置出现了几次
判断位置出现的最大次数和ans之间的大小
小于等于ans就直接 将每一个的最大值相加
如果大于,就先进行数组排序,得到后面的ans个数相加,并标记如果位置是这个数的那么另外的俩个就直接不用相加减了
这时候会分为两类,一个是ans位置前后的值不一样,另一个是ans前后的值是一样的 
最后层层的递减最终求和得出答案 
*/

SD-S00569 各代码节选:

T2:
/*
考虑对于一个图和一个边集的划分
整个图的MST边集一定包含于二者中MST的并集。
O(2^k*n*a(n))
每个状态有用的边只有O(n)条 
*/

T3:
/*
被做局了,我现在会 L1 log^2 +nq.没有任何分 

暴力:枚举要替换的区间,一共 sqrt(L1)L2个。 

O(L2*sqrt(L1)*(log)+q*sqrt(L1))

监考不让在外面随机游走。草 

这个铃声好诡异。 
*/

SD-S00580 T2 代码节选:

//这道题,我们可以给他先跑一遍最小生成树,然后再把最小生成的树剖一下,最后再开棵线段树存一下,然后枚举每一个乡村,看看给他通上那条路会花多少钱-------暴力做法 
T2:
/*
题目中的乡镇不是原来的n个城市中的
不难发现,一组边只能松弛一次,所以它假了

只能用最后一种了:我们倒着删边,每次我们找这条边能被哪两条边替代、
我们用换根预处理了外部和内部点
然后我们枚举边的时候可以考虑到两边的集合有没有和这个点联通 

写暴力吧,我们直接枚举两个点, 
*/

T3:
/*
我们需要找到l,r,使得这中间包含了所有不同字母
我们可以枚举右端点,然后减掉两个hash值
这样就得到了中间那一段相减的值
*/
T1:
// T1 
//可以先反悔贪心
//贪心选最大的,然后如果超过限制,就选该集合里可以通过改变的最大的一个,然后就做完了。

T2:
//T2
//类似一个求最小生成树,可以先枚举激活的点的编号,2^10,然后相当于是在这样的一个东西里面加入一些边然后跑prim 
//时间复杂度是大概 O(2^10*nlogm)更好的做法就只有B算法了,但是实在写不出来卡常就认了吧 
//不对不对,可以现在原图上跑出最小生成树,然后再来暴力,然后就对完了 

T3:
//T3
//不会是AC自动机吧
//发现这个好像是只能进行同义替换一次
//其实是一段前缀一段后缀相同,替换中间不同的部分,感觉可以hash 
//先快速找到需要替换的部分,然后在s中找个数就做完了??神秘 
//那我可要
//高兴早了,s的前后缀相等不代表t的里面和s相等 
//不过大概思路是没错的
//对于t我们还是找出不一样的位置,s也一样,但是这里要储存下来前缀相等的值和后缀相等的值
//现在的问题是给出m个对 
//还是不会爆了,zhengrui出过类似的,但是没有补 

这位确实有点遗憾,T3 自动机写出来就赢了。

/*

试一试:
看看我如何状态转移
总满意度我看看,每进入一个新人,算一下他将就好还是已有的某个人将就好

好像得排序,具体怎么排不知道

看一下前8组是否能过,n<=30

先dfs看看,O(3^n),2.058911e+014,显然TLE了

200
1e7
可以O(n^3)

第12可以水过去

想想前8或前11如何得分

显然,需要决定谁去A,谁去B,谁去C。求总和。但是不能简单取最大值

想一个快于等于O(n^3)的

先想c=0,即一半去A一半去B
如果这样,需统计B比A大的和A比B大的
哪一种少优先选择,其次从多的那一种只能选一部分去另一个了。此时让差小的去另一个更优。
时间复杂度O(nlogn),即使用了priority_queue也没法进一步优化最坏情况
此时8组到手。

看看此时有去C的了,……
分为3类:A最大的,B最大的,C最大的。因为交换无影响
设最多的为a,第二为b,最少为c
显然,不可能a和b同时大于n/2
所以只有a里的人能将就,去b和去c如何定?
若a多出来的人都去b完全可以,因为a+b<n
所以将A根据差排序决定去B还是去C。
因为无需关心a,b,c具体是啥,算出差即可。

无需关心?好像需要关心a,b,c中a的值,b和c不用关心
100分到手。

好像不对。我需要记录最大值从哪里取的,只从从a取的里面减即可

所以应该可以:

================================================================

第二题,大图论

我想想……

只有两种途径让它变成连通图

1.修复已有边
2.使用新增点,并加入新增点和已有点的连边

怎么修复可以跑一遍kruskal(或Prim)。但是不然,现在有新增点了。
新增点与每个点都能有连边,所以,有个笨办法,根据新增点状况进行dfs
这样O(mlogm*2^k)(kruskal)
O(n^2*2^k) (prim)

想想怎么基于其中一个改
cc
直接跑一遍prim能过4个
O(n^2*2^k)能过8个
O(mlogm*2^k)能过4个

prim基于已访问过点,kruskal基于边,想一下基于prim的吧

基于prim,可以不加任何点求出最小生成树。再想想如何在prim过程中加点使得加过点之后更小

加点只需要付加过点的权值。即已有这个点,边是能考虑的。

那么怎么加点呢?Kruskal还是Prim?

啊?特殊性质A?
如果有特殊性质A,即直接把这些点加进去即可,可以不连通这些点?
不连通这些点?K还是P?
只要不连通这些即可,prim是把已联通的连通块连接边加入新点,kruskal是选所有边不构成环的最小边。

我想想……

如果存在两个点使得经其中一个新点路更短,则路最短的新点一定在答案中。然后
跑一个dijkstra只能获得从一个点的最短路,可能这步"优化"更慢了

先想想特殊A吧

有了特殊A,即求最小生成树,其中几个节点可以是非树节点。

好像既然特殊A有后半句,找一下最大的i,之后前i个点都免费了。此时只剩下所有点跑个最小生成树,同时删去

预期4个

==================================
先做第三个吧。

第三个,我需要先算出字符串的区别。即掐头去尾

这样之后,有一个子串关系:

a<=b<=c

a是掐头去尾后的 b是s_{i,1} c是原串

只要对于每个有此子串关系的s_{i,1}判断替换之后的会怎样就行.

接下来就是如何快速判断是否有这个关系。

判断可以用KMP做到O(s),s是字符串长度。我看看这种做法能得多少分

5e6?
接下来,既然总长是5e6,且为多测,O(L1+n*L2)

根据上面的思路,我需要先把每个小串的next表算出来,这一步O(L1)
然后对于每个q,求出它掐头去尾的next表,然后比较每个串是否符合这个子串关系
设这个q大串长度为s
O(s*n)
即O(n*L2)

q=1对此做法无影响
若有B,掐头去尾肯定是baaa...a或aaaa...b
根据b位置左边的a个数和右边的a个数就行。
比较子串关系变成O(1)
此时总复杂度是O(n*q)
看看能不能让它带log

好了,预期6组

试试哈希?

哈希之后,如何判断是否有子串关系?有点难

===================================
看第四题吧。
第四题我看一下是否会做

第四题我可以写个dfs骗骗分

看看折半搜索?
n!好像没法折半,有没有剪枝
如果没面试的所有人耐心都低于了没通过的,则break掉
想想其他的。
想不到。就这样写吧
第四题有个特殊性质A,有A的直接阶乘取模。

m=n时全1则阶乘取模,有0则0

m=1?
这个我想想……
m=1时只录取一个人即可。则可以所有情况减都不录取的情况

都不录取看看能不能求

都不录取?
第一天是1时一定能有人录取
如果第一天是0,不知道了。

此时预期7个

好了
第二题预期4组
第三题6组
第四题7组

那么先做第四题

*/
/*
写不完了,正解是O(2^k*nlogn)的
我们二进制枚举一下每个村庄是否重建
然后加入边直接跑kruscal 
洛谷号:love_luogu 
*/

@love_luogu

All:
//csps rp++!
//scanf 用lld!
//算算空间时间!

T1:
//Ren5Jie4Di4Ling5%
//如果所有成员全都在自己最喜欢的社团中
//考虑如何调剂
//如果一个社团的人数大于 n/2 显然只有一个
//那么其他社团全部不满足要求
//直接把最大次大差最小的k个调走即可
//对不对?
//对于ai,j=ai,k的怎么办
//考虑这样的话其就算错分 也会以0的代价被调剂
//看起来很对 复杂度 O( nlogn)
//14:47
//15:03
//没有问题了 
//难度:橙色
//输入量大致使用scanf即可 ios我不知道写在哪
/*对于所有人来说优先选最大的,对于已经满了的(等于n/2的),优先选最大的前n/2个
统计一下每个人如果按自己最满意的选会不会有社团超人数,如果没有直接这种方案*/
// T1 反悔贪心是不是有点过于困难了 
        /*
        考虑如果有一个超了,那么另外两个定然没有超
        我可以找一个 -x + y 最大的加进去

        即 当我有一个超了,而当前点的最大值是这个 t
        我去比较 q.top() + t > 0
        那么我把 q.top() 对应点加入其对应的 queue 
        */

SD-S01013 T2 代码节选:

/*
It`s a pitty that I can`t solve this problem
But I think I pass T3 :D
Because I have passed all the big_example :)
Though I don`t know whether string hashing is the right way or not
Anyway
Please,God.Let me AC T3.
*/

注:遗憾应为 pity 而非 pitty。

能过 T3 就是大佬!

//可以认为事梁桥匹配同款贪心?

比廊桥分配智慧一点,但写起来省事。

//贪心,第i个社员被分配至第j个社团贡献最大
//如果第i名同学的a1最大,贡献比a2和a3加起来都大,那么一定进1,选择三个队 
//如果第i名同学的a1是三个数中最大的,那么考虑名额还没满时将其放入1
/*hack:
4
1 2 3
4 5 7
7 8 9
10 11 12
29
*/
//不能只考虑先填入1社团 
//40pts

SD-S01152 T3 代码节选:

//AC自动机保佑我AC

@strapplE

您还用得着保佑?

SD-S01169 T3 代码节选:

//Is hash right?
//考虑只保留 MST 上的边枚举k子集跑 MST
//但是和 k 可以不连通
//那就相当于没加这个,一定不优秀
//如果和 k中某点 有两条边,说明这是有用的
//否则 一定不如不加这个点。这个我们已经枚举过了 
//所以做法是duide 
//15:40 卡常结束 969ms

SD-S01231 各代码节选:

T1:
/*
对于只有一个非0的情况,只需要排序之后找前n/2个
对于两个不是0,计算选A而不选B的价值,从大到小排序即可 
这样做是有后效性的,因此考虑贪心 
对于n<=10,直接dfs 

首先将所有的东西都放入最大值,
然后将改变的代价从小到大排序,如果说超了,将改变最小的换一下
使用优先队列来维护 
*/

T2:
/*
对于k==0,跑一边kruskal应该就行了
其余的,建立虚拟节点0号节点,与这k个节点建立联系
然后再把这些边建起来,在跑一边kruskal,偏分 
*/

人家 T1 本来想整的比廊桥分配简单点,愣是给你做回廊桥分配了。

注:该选手 T1 写了约 4 KB,其中除上述引用的内容外没有注释,且缺省源仅不到 100 字节。

SD-S01243 T3 代码节选:

/*
我一定要在考前复习 AC 自动机/ll 

*/

我也是。

想出来之后发现不会 AC 自动机的感觉太无语了。

T2:
/*
对于 c=0,我们直接把边建上求最小生成树就好
如果我们能做到 2^kn就做完了
然后你考虑加边
然后我们尝试对现在这些边做最小生成树
原图中有价值的边只有 O(n) 条
首先,既然你选了,那你肯定至少选两个
最后去掉多余的边吧
卧槽你选了一定联通
*/

T3:
/*
注意到这是找本质不同的区间
*/
/*
看着像个DP 但不好表示 因为有n/2这个限制 
*/

暴力 DP 设计出来发现状态很复杂不好优化就应该考虑贪心了。

/*
最小生成树?
糟了板子忘了 
好像又有一点不同
先随便想一个思路吧
将要改造的乡镇视作新的点
但在最后统计的时候不计入总点数
但按照这个思路的时间复杂度是不足以通过本题目的
先写个部分分吧,感觉我也没那个实力AC 
*/
T1:
    // A club 
    // 抛去一个人后不可能有多于一个是满人状态 
    // 所以只要一个人有两个最优可选项就能随便选 (wa)
    // priority_queue 维护退到下一个最优可选项的代价最小的人 (wa)
    // 只把最多的一个的一部分人退到下一个最优可选项即可

T2:
    // B road
    // 瞪半天只会特殊性质 A 

T3:
    // C replace
    // 纯暴力无优化 

T4:
    // D employ
    // 注意 m = n 时需要判断 
    // 打的状压 DP

SD-S01358 T2 代码节选:

//fen+dijkstra+A
//64pts+8pts = 72pts
//ono zuofajiale
//shi lian tong hai shi wang luo liu
//wo shi sz
//wo mei xue guo wo bu zhi dao

笑点解析:其实是最小生成树。

T1:
/*
会赢吗 
笑点解析:不登校  
怎么放了《泪的告白》 
如果没有限制,每个人显然选最大值
如果有限制,每个人显然都不会选最小值 
我们一开始让所有人选最大值,如果有大于 n/2的,让他改为次大值,取前 k 小即可 
在 15:06 过掉了所有大样例  
*/

T2:
/*
k=0 和 A 性质是简单的,即最小生成树
扩展到没有 A 性质, 我们要减少跑 kruskal 的次数或每次的边数 
比如说,我们能不能提前把一些边缩掉或删掉  
对于不在原图最小生成树上的边,他是没用的
 O(mlog m+n2^k*k)?哦哦哦 
 15:52 过掉了大样例,但是大样例怎么没有 n=1e4 
 随了一组 n=1e4,跑了 3.5s,开始卡常 
 卡不动,下一题 
*/

T3:
/*
有可能是题,但是题不太可能 
枚举替换的右端点 
考虑对 s1 和 s2 分别建 AC 自动机,不难转成二维数点
每次查询在 A 树上一条路径,B 树上一条路径的个数
需要跑 4n 次单点加,2L2 次查询 
8e5,1e7,值域分块 
但这是提高组 
事已至此,先开 T4 吧  
17:25 左右写完了 
18:00 过了所有大样例,但是样例 4 跑了 1.4s
事已至此,先写 T4 吧  
*/

T4:
/*
形式化的,对于所有排列 p
从前往后扫一遍 
若 cnt>=c[p[i] ] 或 s[i]=0,则将 cnt++ 
求 cnt<=n-m 的个数  
首先我会 O(2^n*n^2)
m=n,若不存在 c=0 或 s=0,答案为 n!,否则为 0
能不能转成 Hall 定理啊
事已至此,先写 T3 吧 
18:10 过掉了样例 1 和样例 2 
*/ 
T1:
/*
测试点1-4:直接暴力搜索即可 +20pts
特殊性质A:直接对第一维排序,选最大的n/2个即可 +5pts

首先可以发现由于n/2的限制,每个人的a只有最大的和次大的这两个值是有用的(最小值一定不会被选) 

特殊性质C:(乱搞贪心) 
根据贪心,我们可以先选全局不同的最大的n/2个,这是一定不会超的
然后在剩下的n/2个中,可以把最大值和次大值拆开处理,都打乱放到优先队列中,用标记数组记录使用情况,然后从大到小取出n/2个之后结束就好了 
+10pts? 

特殊性质B:
相当于我们只要考虑前两维
发现之前贪心的漏洞在于:
例如(10,9)和(4,0),贪心会选10+0,但正解应该是9+4
换言之,假设有当前已经入选的(最大a,次大b) 和 另外一个因为第一个数被选满而没被入选的(最大c,次大d),满足b+c>a,那么此时应该替换方案

+15pts? 

目前得分:35pts 
*/

T2:
/*
首先如果k=0,那么就是裸的最小生成树  +16pts

特殊性质A:c[j]=0意味着可以无偿把所有未建的点全部城市化
此时会多出10n条虚边。考虑对原有的边加上这些边跑最小生成树即可  +32pts

否则,考虑按照边权从大到小依次枚举最小生成树上的边,然后把k个城市化改造的都扫一遍算最小花费

具体地,考虑把当前边的两个端点都尝试用城市化改造k来更新,在a[k]中找到除了当前端点以外的最小值替换(可以用ST表维护最小、次小值,如果最小值是当前端点就算最小值) 

后来发现不用ST表,直接预处理时按照值对下标排序即可 

注意还要同时记录每个可城市化的点 在之前已经花了多少钱了,为了防止更新错乱 

时间复杂度为O(mk + n + nk) <= 1e8

目前得分:(48+?)pts 
*/

T3:
/*
以下记t[j][1]=x,t[j][2]=y 

考虑dp。
设f[i]表示x的前i个字符的替换方案数
那么可以枚举一个j<i,若s[j~i]可以替换为 
*/

T4:
        // 状压,设f[i]表示当前参加面试的人为i时能够至少录用m人的数量
        // 初始化所有二进制里有 
//trick1: 乡村是乡村,城市是城市,相当于用c_j的代价开了一个中继点(只有10个) 而且中继点与中继点之间是不连通的 
//trick2: 只要用到中继点 中继点必然也在最小生成树上 
//给整个图加上链接中继点的边是行不通的
//好像可以把村子拆成俩点处理,这俩点之间的边权是c_j
//如果连这个点的边只有一条,证明这个点用不着,删了这条边的边权和这个点的点权就好了,会多1e5条边和20个点。 
//单开一个函数写这个。
//18:12 这个做法假了,留着看看能不能骗点分( ,反正是分开写的(
T1:
/*
Solution:
直接贪心肯定不对
考虑dp(?
不妨先把每个人都加到最好的组里
记录把他转到第二好的组所差的贡献
不可能出现两个组都进不去的情况 
如果人数超过n/2
就把里面两组之差最小的挪到第二好的组中 
OK
15:16样例全过 
*/

T2:
/*
Solution:
给了一堆点
先开C 
17:02回来了 
只会60pts
前20pts就是最小生成树 
特殊性质A就是给了一条免费边
然后能算出每条边代价的最小生成树 
4 4 2
1 4 6
2 3 7
4 2 5
4 3 4
怎么又读错题了
k个乡村是新加入的 
所以存在一个与该乡村匹配的等效城市
该城市与其他城市连边即可 

再想想
对于每个乡村k 
计算每一条最小生成树上的边{i,j,w}
如果s[k][i]+s[k][j]<w
那么res+=w-s[k][i]-s[k][j]
如果sigma(res)>=c[k]
就把k城市化  
不行
骗几分吧
假设所有乡村都选 
wc
乡村只有10个
枚举选不选只有1e3个排列 
4 4 2
1 4 6
2 3 7
4 2 5
4 3 4
1 1 8 2 4
100 1 3 2 4
*/

T3:
/*
Solution:
给定n个二元字符串组
考虑对于每个问题二元字符串组
有多少个t1替换得到t2的方式
直接考虑暴力
对于t1爆搜那些可以换,dfs换,换到不能再换为止,出现t2就结束 
但是有可能爆栈 
不是怎么读错题了
怎么只能换一次
直接枚举起点
再枚举换为哪一个
check换完后一不一样就行了 
*/

T4:
/*
Solution:
发现n<10可以暴力全排列
特殊性质A代表所有人都能过
答案就是随便排 
有没有非指数做法
对于特殊性质B
能录取的人不超过18个
用前缀和求出对于每个能录取的位置,前面有多少人不会被录取
正序寻找对于每个si=1的i,放上>前面不会被录取人数且最小的ci
放到放不下就是答案 
怎么求(a!)%mod 
龟速乘 

我去全假了
只考虑性质AB吧 
只考虑n<10吧 

10 5
1101111011
6 0 4 2 1 2 5 4 3 3
怎么不对 破防了 
*/
T1:
// Block 1.
// 反悔贪心?
// 考虑每次将人添加到好感度最高的社团,如果人数超限就把好感度最低的踢出去
// 不会证。但是我猜T1不会放巨大容斥dp。 
// 2e9 不会爆 int
// 我觉得不太对。无法通过第三组样例。 

// Block 2.
// 注意到一个人最多只会被踢一次。 
// 这样一定有至少 n/2 的人可以选择好感度第一的社团 
// 开 dp[i] 记录有 i 个人被迫选择好感度第二的社团时的最大和 ..?
// 即有 i 个人选第二个,剩下 n-i 个人选第一个 
// 但是转移是n方的。考虑优化 i。
// 还是可以反悔贪心。每加一个人踢出当前移到第二个选择代价最小的。
// 我觉得证明显然。 

// 15:18 大样例全部通过。 
// 保险起见 ans 还是开 longlong 吧。 

T2:
// Block 3.
// 如果由一个乡村建出的边集是答案的一部分,这个边集连接的点边权和一定比原图上这个点集的最小生成树更优。
// 遍历每一个乡村引出的树,尝试用原图上的边去更新这棵树。
// 如果原图上这条边比新树上两条边更优就更新。 
// 但是有可能一条边在一棵树上能更新但是在另一棵树上不能更新。因此考虑答案合并。
// 记录每一棵树更新了哪些边以及每条边更新后答案变化值 
// 注意到如果建了一个乡村一定会先连最便宜的边。
// 连一条边后对原树进行链更新用新边优化掉原树路径上最长的一条边。

厨力玩家

SD-S00004 T3 代码节选:

/*
还剩10min
2023年我同学写了 game.ans
上了SD奇葩行为大赏
2024年他写他自己写了game.ans
又上了
2025年他说他还要写
他今年是SD-S01020
快去看他的代码 
*/

等翻到再说?

SD-S00233 T1 代码节选:

//Love Chtholly forever

SD-S00336 T1 代码节选:

//wyz bless me

SD-S00376 T1 代码节选:

//40PTS
//i love yukina roxy anon yuki aimi aiba and all of bangdreams characters and cvs

角色出自《BanG Dream!》。

// hm2ns & sakanaction & RADWIMPS

SD-S00427 每程序开头:

#include<bits/stdc++.h>
#define I_love return
#define My_Wife 0
#define Exusiai ;

@fwTransform

角色出自《明日方舟》。

SD-S00533 各程序节选:

All:
#define IXcape cout<<endl;return 0
#define Venti cout<<"\nVenti!\n"

T1:
/*
愿风神护佑我。 
*/

T2:
/*
这里是无风的烬寂海啊…… 
*/

T3:
/*
我愿意等待,我无声祈祷, 
*/

T4:
/*
静候那送归我的高天之歌。 
*/

@IXcape

角色出自《原神》。

你怎么知道我也喜欢温温老师()

温温老师可爱捏!

SD-S00555 各程序节选:

T1:
Iloveyou
Iloveyou
Iloveyou
QAQ
Really!
Staywithme

T2:
Ireallymissyou
imissyou
R. 

T4:
nonononononono!

没有可用的角色信息。也许是选手的 npy?相关知情同学可以说一下。

SD-S00689 各代码节选:

All:
/*luogu@Nahia uid:1199153
Genshin Impact uid:289015817
I love Nahida forever!*/

T2:
//中间忘了 
//特殊性质A:32pts 

T3:
//中间忘了 
//暴力:疑似40pts 

T4:
//疑似特殊性质A: 16pts

@Nahia

可惜今年花神诞祭没有活动了。

SD-S00889 每程序节选:

//借谦哥之力AC

没有可用的角色信息。相关知情同学可以说一下。

namespace ToyamaKasumi{

角色出自《BanG Dream!》。

SD-S01015 T1 代码节选:

// 华风夏韵,洛水天依!
// 天依宝宝可爱!> <

@littlebug

角色出自 Vsinger。

//葉&緖

没有可用的角色信息。有了解的选手可以告诉我,谢谢。

void Yorushika(){
  ...
}
int main(){
    file("<题目名>");
    int Tc=1;
    while(Tc--) Yorushika();
    return 0;
}

SD-S01479 T2 代码节选:

//Love you deep from the bottom of my heart, though you've hurt me a lot.

没有可用的角色信息。也许是选手的 npy?相关知情同学可以说一下。

SD-S01483 每程序节选:

/*
洛天依赐我力量
lxl赐我力量
珂朵莉赐我力量
奈芙莲赐我力量
瑟尼欧里斯赐我力量
二阶堂希罗赐我力量
樱羽艾玛赐我力量
ksm赐我力量
ykn赐我力量
ppp赐我力量
Roselia赐我力量
让我拿到7级钩吧!!!!!!
关注洛谷:978535(好像是)--Kayisama
*/

@Kayisama

你把 ID 背错啦!

太多了我真没法一一列举出处了大家自己必应吧。

不对呀等一会 lxl 不是二次元的问题不大他是个二次元

自我介绍

SD-S00122 T1 代码节选:

//made by ljy.put me on mihuoxingweidashang.
//may TLE.

满足你。

/*
LEX666
RP++
*/

@LEX666

by qqqaaazzz

@qqqaaazzz

/*
luogu undefined_behavior
预期:100+[48,64]+[10,25]+8=[166,197]
*/

@undefined_behavior

就在刚才……

经过人工核查,今年全省只有 SD-S00433 一位选手的 T2 真的在这里出错了,\mathbf{64}。这位选手在笔者的隔壁班,现已被全机房严肃嘲讽。

你也是,但凡看眼你 T2 里头写的啥是不是?

//code by JuRuoOIer(Luogu 476093)
//problem:<题目名>
//expected:<期望得分、复杂度>

@JuRuoOIer

//by SmileMask

@SmileMask

//luogu uid:547760
//by:lain_yc

@lain_yc

//UID:1137851
//CCF **

@Fwx2011

//[HRH]'s Code

未找到相关用户。

//CSP-S RP++;
//不要挂分 orz 
//luogu 关注 lain_yc (帮忙宣传 并非本人) 
//今年应该还有迷惑行为大赏吧(我要上) 
//最终就100多pts,希望能过

@lain_yc

你的洛谷也发一下呗?

//LUOGU UID 1208546

@AnotherDream

抽象命名

也许下述内容是故意拼错的,但我们仍然科普一下正确拼写。

int jie(int x){
    ll res=1;
    for(int i=x;i>1;i--){
        res=res*i%mod;
    }
    return res;
}

也许 solve 更像一个真正的 OI 选手。

struct Gragh{
    int v,w;
    bool operator<(const Gragh &B) const{
        return w>B.w;
    }
};
vector<Gragh> G[N];

正确的拼写是 graph。

long long jiecheng(long long n){
    long long ans=1;
    for(int i=1;i<=n;i++){
        ans *= i;
        ans %= 998244353;
    }
    return ans;
}

阶乘的英文是 factorial,通常用前四个字母 fact 表示。

以及,在 n 较小时,阶乘通常采用预处理。

void miao()

喵喵 ~

void vnion(int u,int v){
    u=findd(u);v=findd(v);
    if(u==v)return;
    fa[u]=v;
}

@Weslie

正确的拼写是 union,不过作者显然这里是为了防止重关键字。

int fa[M],e[M],cnt,ans,num,vis[M],cuncnt;
...
int cnt1=0,duosuan=0,fsame;
namespace Luminescent
...
namespace Loyalty

忠诚!\o/\o/\o/\o/\o/

注:luminescent 是发光的意思,loyalty 是忠诚的意思。

void cacl()

计算的英文是 calculate,用于命名时通常取其前四个字母 calc。

你这个玩意叫做氯化(正一价)钙,不过经查,在特殊条件下这玩意是存在的。

void hebing_x(ll x,ll y,ll z)
void Lian(int x,int y)

合并的英文是 merge。

struct Tu{
    int bian;
    int Next;
}Edge[M*2];

图:graph。点:vertex。边:edge。

struct Side{
    int u,v,w;
}sd[M];

side 更偏向于“侧”的意思。

#define bug cout<<"songge888"<<'\n';

@songge888

SD-S00562 T2 代码节选:

void gugugu()
...
void kukuku()

SD-S00984 每程序节选:

using namespace cute_fzj_kuai_ruarua;

其他

SD-S00235 T1 代码节选:

// 15:39 第 3 次打铃 间隔 45 分钟 
// 15:59 第 4 次打铃 间隔 20 分钟 

/*

吓哭了

编译结果...
--------
- 错误: 16
- 警告: 18
- 编译时间: 1.36s 

7MB Big Sample Test 

机器:Intel(R) Core(TM) i5-4590 CPU @ 3.30GHZ
运行内存:8 GB

5 Average(O2):
0.249
0.249
0.249
0.249
0.249 

5 Average(No optimize):
0.390
0.390
0.390
0.390
0.390

ok(这么稳吗 

最   终   M   V   P   结   算   画   面

编译结果...
--------
- 错误: 0
- 警告: 18

*/

SD-S00344 T4 代码节选:

/*
当 小绿旗 被点击时
from random imporent c++
using namespace std;
int 面(){
    int(inport(n));
    说 两秒 “你输入的数是”n;
    return 0; 
}
*/

SD-S00345 每程序开头:

/*
弄不死就往死里弄!
不要放弃任何一点分!
先写暴力!发掘特殊性质!
读题读题读题!
int <-> long long 数组大小! MLE?RE? OK
图论?DP? 
优化一下? 
*/

暂定@Garry_HJR

SD-S00350 T1 代码节选:

// 多测,一定一定要清空!!!

SD-S00357 T3 代码节选:

/*
呜呜呜为什么只做出来T1。
第一次考S也想上迷惑行为(
//freopen
//freopen
//freopen
//freopen
//freopen
//freopen
//freopen
//freopen
*/ 

安排!

SD-S00376 各代码节选:

T2:
    //空白占位符
    //祝所有oier rp++ 

T3:
//果然文化课比OI简单的多 0PTS

SD-S00410 T2 代码节选:

不开long long见祖宗 
邻接表战神来也!!!!!!!! 

SD-S00486 T4 代码节选:

/*
复习时大脑是MLE的,考试时知识点是越界RE的,
题目思考时间是TLE的,思路是CE的,打好以后是证出来自己WA的, 
样例出错在自己脑子里是UKE的,交上是假装自己AC的。 
*/

SD-S00511 每程序节选:

//int main!!!!

SD-S00528 T1 每程序节选:

//高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分高分

SD-S00531 各程序节选:

T1://give me 100 pts plz! qwq!
T2:// give me 56 pts plz! qwq!
T3:// give me 50 pts plz! qwq!
T4:// give me 10 pts plz! qwq!

另外该选手的 main 函数没有返回值。

SD-S00559 T3 代码节选:

/*
完蛋了家人们啊。。。。 
*/

SD-S00562 T1 代码节选:

    // if 大师。 
    // DP? 毁了忘了背包 
    // A tan B 
    //D场又没配虚拟机 没加挡板 i512400 商科512
    //我常常追忆过去。

SD-S00580 T4 代码节选:

/*
#define WA AC
#define AC AC
#define TLE AC
#define MLE AC
#define UKE AC
#define OLE AC
#define RE AC
#define SD-S00580 std
Ad-hoc
HoLuc1078
*/

@HoLuc1078

SD-S00666 每程序结尾:

//csp-2025 rp++!
//SD-S00666
//赛博佛祖保佑

SD-S00685 每程序开头:

/*防伪标识:十年OI一场空,不开long long见祖宗*/

SD-S00785 T3 代码节选:

//long long(unsigned long long?) 
//初始化(lazy=0/1,init()放在输入n下面)
//树剖t[x].val = val[id[l]] 
//差分约束n+1
//并查集init(0,n+1?)
//空间尽可能开8倍,是否需要双向边?差分约束多建多少条边,与0构成的边边权为几 
//__gcd() __int128 __builtin_popcount()
//自己检验freopen 
//对拍 

给你安排到下一版的考前提醒得了 ww

//静心,longlong,大小,空间,格式,文件,复杂度

SD-S00913 T1 代码节选:

请问T1不会做还有救吗?

SD-S000987 T2、T3 代码节选:

/*
我要能拿1=。我直播吃我的luogu用户名后六位。。。。。 
*/

你倒是说说你洛谷用户名是啥啊?

SD-S00996 T4 代码节选:

/*
You should write "freopen" like this:
feropen("empoly.in",'w',stdin);
I want to show myself on the TV!
UID=1235038
*/

@i_ak_ioi111111

助力每一个不知死活的梦想。

SD-S01064 T2、T4 代码节选:

//第五人格启动

SD-S01092 T2 代码节选:

//柬埔寨人看到这道题吓哭了

SD-S01210 每程序结尾:

// rp++!!!

// i will win csps2025 /fendou

SD-S01261 每程序结尾:

//1.快读
//2.注意空间
//3.多测清数据
//4.对拍
//5.打满暴力
//6.文件
//7. RP++;
//starback24

程序中出现了两位选手,都 at 一下吧:

@starback24 @white_carton

SD-S01282 每程序结尾:

/*
zip password Ren5Jie4Di4Ling5% 
提交要求 
1. 在 D 盘根目录下创建文件夹 SD-S00001张三(准考证号 + 名字,中间无空格,注意是英文短杠) 
2. 下面放题目文件夹 
3. 题目文件夹只放对应题目的源程序 
*/

SD-S01294 T1 代码节选:

//我常常追忆过去

SD-S01331 各代码节选:

T2:
//技不如人,我甘拜下风

T3:
//请注意T3的空间限制 

确实,T3 空间限制明示用 trie。

SD-S01373 T2 代码节选:

/*
为了上洛谷奇葩榜:   
我要打乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙
乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙 乌蒙

你说得对,但是: 
...(省略一些含有屏蔽词的内容,可以参考初四上政治“实现中国梦的方式”)
作为新时代四有好少年,我们要为中华民族伟大复兴贡献力量 
*/

虽然你政治题背得很熟练,但你这样可能会导致迷惑行为大赏发不出去你知道吗???

SD-S01463 T3 代码节选:

//喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵 
//喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵
//喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵
...(省略 40 行相同内容)
//喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵
//喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵喵
//退役前,尝试上一次人类迷惑行为大赏
//luogu wolfiez

@wolfiez

SD-S01502 每程序结尾:

/*
我这辈子行善积德,扶老奶奶过马路,图灵爷爷在上,助我破鼎 
*/

SD-S01516 每程序结尾:

//多测要清空
//测极端数据
//注意数组大小
//注意保留小数位数

SD-S01550 T3 代码:

/* 

我 操 你 妈

*/

SD-S01613 T3 代码节选:

//充满鲜花的世界到底在哪里

SD-S01621 各代码节选:

T1:
天灵灵地灵灵,我的代码不爆零
orz orz orz 让我拿二等奖吧,555

T2:
/*
行行好吧,给孩子一个二等奖吧 
能骗几分是几分吧 
    天灵灵地灵灵,我的代码不爆零 
*/

SD-S01638 T3 代码节选:

    //SD-S01638 used Memento!
    //SD-S01638 fainted!

@Sharpness_

上述内容出自宝可梦。

SD-S01644 各题代码节选:

T1:
//15pts.
//TAT

T2:
//The end.
//The situation now: dying

T4:
//0pts.
//So I gave it up.

颁奖盛典

让我们以最热烈的掌声,恭喜本年度 CSP-S2 最强奶龙奖的诞生!

这部分分数相关内容采用官方数据评测。

最长编译错误奖

在官方指定的编译选项下,产生编译错误量在 70 KB(71680 字节)以上的选手如下:

Rank 1
Player:SD-S01193 / Problem:replace / Error length:362286 / Compilation time:1.060

Rank 2
Player:SD-S01169 / Problem:replace / Error length:174630 / Compilation time:1.045

Rank 3
Player:SD-S00449 / Problem:employ / Error length:126243 / Compilation time:1.201

Rank 4
Player:SD-S01299 / Problem:club / Error length:116693 / Compilation time:1.029

Rank 5
Player:SD-S00413 / Problem:replace / Error length:75430 / Compilation time:1.060

Rank 6
Player:SD-S01190 / Problem:club / Error length:74546 / Compilation time:1.045

如何在家超越这个奖?

在程序开头写一行:

#pragma GCC optimize("unroll-loop")

程序的报错量取决于你加了多少头文件。如果后面是万能头,会有约 13000 条报错(不开 -Wall-Wextra),总大小 3940991 字节。

这行正确的的写法是:

#pragma GCC optimize("unroll-loops")

最长编译用时奖

在官方指定的编译选项下,编译用时在 2500 ms 以上的选手如下:

Rank 1
Player:SD-S00133 / Problem:road / Error length:0 / Compilation time:41.106

Rank 2
Player:SD-S00139 / Problem:replace / Error length:0 / Compilation time:4.274

Rank 3
Player:SD-S00382 / Problem:replace / Error length:0 / Compilation time:4.243

Rank 4
Player:SD-S00226 / Problem:replace / Error length:0 / Compilation time:3.198

Rank 5
Player:SD-S00307 / Problem:road / Error length:0 / Compilation time:2.948

其中第一名的代码有必要放出来共赏:

int n,m,k,w[10001],u[10001],v[10001],c[10001],a[10001],z[10001][10001]={10001},ww[10001],ans;

这里 ta 使用花括号初始化了一个大小约 10^8 的数组。

使用花括号初始化数组时,编译器编译出来的内容实际上是依次将每一项进行设定,指定的项设置为指定值,未指定的项设置为 0

也就是相当于 C++ 中 10^8 条赋值语句,编译器输出的可执行文件大小为 300+ MB。

所以遇到这种情况,请在 main 函数内使用赋值语句操作。

提名奖 - 并查集合并这一块

inline void merg(ll x,ll y){
    fa[x]=fa[y];
}

\mathbf{88}

引以为戒。

int merge(int u,int v){if(sz[u]<sz[v])swap(u,v);sz[u]+=sz[v];fa[v]=u;}

\mathbf{100}

引以为戒。

提名奖 - 你 模 数 写 错 了

众所周知,T4 的模数是 998\ 244\ 353

const int mod=1e9+7;

12 分(24\to12),喜提成为全省唯一一个因此挂分的选手。

铜奖 - inf 没开够这一块

const ll inf=0x3f3f3f3f;

@01bit

16 分。

ll n,m,k,pl=0,ans=2e9,c[K],f[N],a[K][N];

32 分。

引以为戒。最值变量的初值一定要够大/够小。当你赋的初值与可能取到的最值接近时,请计算检查是否可能超过设置的最值。

银奖 - 哥们,评测环境是 Linux

#include<windows.h>

56 分,喜提成为全省唯一一个因此挂分的选手。

金奖 - 这特么不报错不警告???

    inline init(){
        for(int i=1;i<=n+k;i++)fa[i]=i;
    }

\mathbf{92}

上述在 DEV-C++ 中不开 -Wall 不会报错或警告。另外,如果上述函数中有返回值,则开什么编译选项都不会报错或警告。

引以为戒。

写在最后

这种地方说的话其实差不多,但今年我想额外说点不太一样的。

从每年发下代码后看迷惑行为大赏,到 24 年因为没人写而主动挑起写迷惑行为大赏的担子,再到 25 年下一代选手也开始编写迷惑行为大赏我*不对咋是退役老哥……

这五年,也许变化了很多,但一代代 OI 选手对 OI 的热爱却从来没有消散。

这就是 OI 选手最宝贵的精神,也是 OI 学习路上最强大的动力。

无论你披荆斩棘、夺得桂冠,还是略有失误、败兴而归,你人生的旅途都将继续。

愿你能保持热爱,奔赴山海。也祝你在 NOIP 中取得好成绩!

CSP-S2 2025 山东省迷惑行为大赏,完。

敬请关注:NOIP 2025 山东省迷惑行为大赏。

再次提醒:代码里写汉字更有可能上哦!