Skip to content

Codeforces problem solutions written in Golang 💭💡🎈

License

Notifications You must be signed in to change notification settings

smakslow/codeforces-go

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

codeforces-go 💭💡🎈

算法 Algorithm

由于算法知识点多且杂,将自己学习到的算法、做过的题目分类整理好是有必要的。

一个算法模板应当涵盖下面几点:

  • 对该算法的基本介绍(核心思想、复杂度等)
  • 参考链接或书籍章节(讲的比较好的资料)
  • 模板代码(可以包含一些注释、使用说明)
  • 模板补充内容(常见题型中的额外代码、建模技巧等)
  • 相关题目链接(模板题、经典题、思维转换题等)

算法目录

如何选择题目 How to Choose Problems

我的方法很简单,选择难度在自己 rating 到 rating+200 范围内的构造题 (tag: constructive algorithms) 或数学题 (tag: math),按照过题人数降序,比如 [2100,2300] 区间的就是下面这个链接:

https://codeforces.com/problemset?order=BY_SOLVED_DESC&tags=combine-tags-by-or%2Cconstructive+algorithms%2Cmath%2C2100-2300

为什么要选构造和数学?做构造能提高观察能力,快速找到切题入口;做数学能提高挖掘题目本质的能力。做这两类题目对提高问题的分析能力大有裨益。

我的 Codeforces 账号:

0x3F

测试及对拍 Testing

编写一个 run(io.Reader, io.Writer) 函数来处理输入输出。这样写的理由是:

  • main 中调用 run(os.Stdin, os.Stdout) 来执行代码;
  • 测试时,将测试数据转换成 strings.Reader 当作输入,并用一个 strings.Builder 来接收输出,将这二者传入 run 中,然后就能比较输出与答案了;
  • 对拍时需要实现一个暴力算法 runAC,参数和 run 一样。通过随机数据生成器来生成数据,分别传入 runACrun,通过比对各自的输出,来检查 run 中的问题。

具体可以见 Codeforces 代码仓库 main,所有非交互题的代码及其对应测试全部按照上述框架实现。

学习资料及题目 Resources

注:由于入门经典上选了很多区域赛的题,一部分题目可以在 GYM 上找到,这样可以就可以用 Go 编程提交了。

算法竞赛入门经典(第二版)

算法竞赛入门经典训练指南

算法竞赛入门经典训练指南(升级版)

算法竞赛进阶指南

算法竞赛入门到进阶

OI Public Library(含国家队论文)

算法竞赛 (ICPC, OI, etc) 论文,课件,文档,笔记等

算法竞赛课件分享 by hzwer

算法第四版 Java 源码

数据结构和算法动态可视化

OI Wiki

CP-Algorithms

All the good tutorials found for Competitive Programming

GeeksforGeeks 上的算法合集

Pepcy 模板

F0RE1GNERS 模板

算法学习笔记(目录)

洛谷模板题(建议按难度筛选)

Codeforces Problem Topics

Luogu Problem List

洛谷日报

2021 年洛谷日报索引

2020 年洛谷日报索引

2019 年洛谷日报索引

2018 年洛谷日报索引

高级竞赛算法

算法进阶课

AtCoder 版《挑战程序设计竞赛》

AtCoder 版!蟻本 (初級編)

AtCoder 版!蟻本 (中級編)

AtCoder 版!蟻本 (上級編)

AtCoder 版!蟻本 (発展的トピック編)

待整理

偶然在 GitHub 上发现的超长列表

算法竞赛训练中较难的部分

算法竞赛中可能不太会遇到的论文题

https://blog.csdn.net/calabash_boy/article/details/79973483

https://github.com/zimpha/algorithmic-library

https://www.luogu.com.cn/blog/command-block/blog-suo-yin-zhi-ding-post

https://wcysai.github.io/

其他 Others

My GoLand Live Templates and Postfix Completion settings

Useful Tools

Draw Geometry

Draw Graph

OEIS

Wolfram|Alpha

UpSolve.me

Contests Filter

Practice Problems Recommender

Codeforces Upsolving Helper

Codeforced

Rating

Open Codeforces Rating System

Codeforces Visualizer

Codeforces: Problem Difficulties

Keep Healthy

Exercises!

About

Codeforces problem solutions written in Golang 💭💡🎈

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.4%
  • Other 0.6%