魔法少女的契约 : 1 表示 “真,正确”,0表示 “假,错误”
文章内容可能有错误,实时更新后的博客 : here
__int1281关闭流同步1 $^{[1]}$#define int long long1,但是不推荐__gcd()1clock()1,但是需要注意返回值在系统间的区别(使用CLOCKS_PER_SEC)rand()1,但是更推荐mt19937,一个使用方法是mt19937 rng(random_device{}())$^{[2]}$fread,fwrite1ifstream,ofstream1__gnu_pbds内的所有内容 1下划线开头的函数大部分可以,除内嵌汇编(如__asm)或有明确禁止行为的函数(见CCF 的官方公告)手动开启编译选项,如 #pragma,__attribute__0,不可以,总司令!(尤其是手动开启 $O2$ )万能头文件 bits/stdc++.h1,注意头文件引入的额外重名风险 $^{[3]}$using namespace std;1,同上cerr/clog1,cerr虽然不会影响答案,但是会严重影响程序运行效率,提交前请注释assert1,可以在提交时在代码开头写#define NDEBUG,也推荐删掉所有assert。这个变量名可以吗?取决于你的代码最终能否在NOI Linux下编译,头文件和命名空间的使用也会影响最终结果CCF 评测姬效率如何去年为i7-8700k,具体情况请见题面注意事项可以使用 memset 吗1,尽管其效率不劣于暴力赋值,然而如果多次清空整个数组可能导致 TLEcsp复赛能用快读快写吗1,请见 $[1]$需要 fclose() 吗0,也不推荐写,与关闭流同步混用可能导致缓冲区未写入文件
[1] : 关闭流同步后不要使用任何 C 语言风格的IO,例如 scanf,printf,putchar,puts,fread,fwrite,尤其是 getchar,一个常见的错误是关闭流同步后使用快读快写。getline是可用的。
[2] : 同样可以写作 mt19937 rng(time(0)) ,亦或者是更精确的 mt19937(chrono::steady_clock::now().time_since_epoch().count())
[3] : 同样可以使用 bits/extc++.h
以上内容凭个人经验,选题来源于很多谷民重复的问题。其中不乏一些回答是错误的(点名 Chatgpt),故在此整理。
不保证所有内容一定正确,非常欢迎发现错误后在评论区指正,内容会在博客中更正。
祝各位 CSP-J/S RP++

Comments NOTHING