/blog/oi

CCF考试骗分指南

正经派 关于做题 首先,看到题目之后不要急着写代码,先在草稿纸上分析完整再开始写,如果思考后没有正解,先写暴力再进行优化 可以尝试手推样例看一下有没有特殊性质,如果手推太困难可以借助程序打表找规律 遇到复杂贪心、结论题直接猜结论,再和暴力对拍 记得开long long,分析数据范围开int128 多测记得输出换行和清空数据 关于时间分配(CSP-S) *J组随便AK 1h出T1(如果理想的话)…

W WillZhong RichMan 16 views — min read OI data-structure algorithm cpp-implementation ccf

正经派

关于做题

  1. 首先,看到题目之后不要急着写代码,先在草稿纸上分析完整再开始写,如果思考后没有正解,先写暴力再进行优化

  2. 可以尝试手推样例看一下有没有特殊性质,如果手推太困难可以借助程序打表找规律

  3. 遇到复杂贪心、结论题直接猜结论,再和暴力对拍

  4. 记得开long long,分析数据范围开__int128

  5. 多测记得输出换行和清空数据

关于时间分配(CSP-S)

*J组随便AK

  1. 1h出T1(如果理想的话)
  2. 剩下直接打部分分

关于编译

g++ foo.cpp -o foo -std=c++14 -O2 -Wall -Wextra

记得开 freopen,检查文件名!!!!

记得分析数据范围开 long long !!!

记得多测清空

数组大小开对了吗,线段树开 $4n$ 了吗

保存代码了吗

记得对拍

#include <bits/stdc++.h>
using namespace std;
void create_dataset(){
    ofstream fout("prob.in");
    // create my dataset
    fout.close();
}
int main(){
    int tests = 100;
    for(int i = 1;i <= tests;i++){
        create_dateset();
        system("brute.exe");
        system("sol.exe");
        if(system("fc sol.out brute.ans"){
            print("Wa on test %d\n", i);
            return 0;
        }
    }

    printf("Accepted %d tests\n", tests);
}
部分分注意事项

$n \le 24$ 可以枚举子集
$n \le 9$ 全排列

可以这样写

void solveA(){
  //todo
}
void solveB(){
  //todo
}

int main(){
  input();

  if(checkA()) solveA();
  if(checkB()) solveB();
}

骗分派

  1. 字符串直接上哈希

  2. 贪心不能证明哪个正确?9 使用这个来帮助你

cout << max(solveA(),solveB()) << "\n";
OI data-structure algorithm cpp-implementation ccf
All articles
Comments

0 条讨论

Please sign in to join the conversation.

No comments yet. Be the first to share.