索引(挑战程序设计竞赛——经验篇)

须知

本博文是对博主的挑战程序设计竞赛——经验篇分类的索引。

文章目录

            • 须知
      • 第一章:蓄势待发——准备篇
      • 第二章:初出茅庐——初级篇
        • 2.1 搜索
        • 2.2 贪心
        • 2.3 动态规划
        • 2.4 数据结构
        • 2.5 图论
        • 2.6 数学问题
        • 2.7 第二章习题总结
      • 第三章:出类拔萃——中级篇
        • 3.2 常用技巧精选(一)

  • 题目难度:三星以下是独立完成的或认为比较简单的,三星及以上是没有独立完成的或认为有难度。
  • 复习指数:三星以下到一星以上的具有一定的复习价值,三星及以上推荐复习,零星不具有复习价值。

第一章:蓄势待发——准备篇

解题报告链接:挑战程序设计竞赛(第一章)

题目名称 题目类型 题目难度 复习指数 备注
三角形 暴力搜索 ✦✧✧✧✧ ✧✧✧✧✧
Ants 脑洞 ✦✧✧✧✧ ✦✧✧✧✧ 多种方法
难度增加的抽签问题 二分 ✦✦✧✧✧ ✦✦✦✧✧ 降低复杂度

第二章:初出茅庐——初级篇

2.1 搜索

解题报告链接:挑战程序设计竞赛(第二章:2.1 搜索)

题目名称 题目类型 题目难度 复习指数 备注
部分和问题 DP/深搜 ✦✦✦✧✧ ✦✦✦✧✧ 递归,多种变体对比
Lake Counting 深搜 ✦✧✧✧✧ ✦✧✧✧✧ 模板题
迷宫的最短路径 广搜 ✦✧✧✧✧ ✦✧✧✧✧ 模板题

2.2 贪心

解题报告链接:挑战程序设计竞赛(第二章:2.2 贪心)

题目名称 题目类型 题目难度 复习指数 备注
硬币问题 贪心/DP ✦✧✧✧✧ ✦✦✧✧✧ DP方法的使用
区间调度问题 贪心 ✦✦✧✧✧ ✦✦✧✧✧ 贪心策略的选择
字典序最小问题 贪心 ✦✦✧✧✧ ✦✦✧✧✧ 英文题目理解
Saruman’s Army 贪心 ✦✦✧✧✧ ✦✦✧✧✧ STL的使用
Fence Repair 贪心/哈夫曼树 ✦✦✧✧✧ ✦✦✧✧✧ 优先队列、数据类型

2.3 动态规划

解题报告链接:挑战程序设计竞赛(第二章:2.3 动态规划)

题目名称 题目类型 题目难度 复习指数 备注
01背包 DP ✦✧✧✧✧ ✦✧✧✧✧ 模板
01背包之2 DP ✦✧✧✧✧ ✦✧✧✧✧ w太大,使用v
完全背包问题 DP ✦✧✧✧✧ ✦✧✧✧✧ 01背包的逆序循环
最长公共子序列 DP ✦✧✧✧✧ ✦✧✧✧✧ 模板
最长上升子序列 DP ✦✧✧✧✧ ✦✧✧✧✧ 模板
多重部分和问题 DP ✦✦✦✧✧ ✦✦✦✧✧ 两种方法,状态构造的重要性
划分数 DP ✦✦✦✧✧ ✦✦✦✧✧ 状态转移方程
多重集组合数 DP ✦✦✦✧✧ ✦✦✦✧✧ 两种方法,状态转移方程多样性
  • 动态规划题目类型总结:
    • 背包问题:基本的动态规划(01背包(即变体),完全背包和多重背包)
    • LIS和LCS
    • 多重部分和问题:n种类型数,每一种有 m i m_i mi个,从中取出若干个数使其之和等于K。
    • 划分数:n个同类物品,将物品划分为不超过m份,求划分方法的方法数目。(一般需要模M)
    • 多重集组合数:n种类型物品,每一种有 a i a_i ai个,从中取m个,求取的方法的数目。

2.4 数据结构

解题报告链接:挑战程序设计竞赛(第二章:2.4 数据结构)

题目名称 题目类型 题目难度 复习指数 备注
Expedition 优先队列/贪心 ✦✦✧✧✧ ✦✦✧✧✧ 注意自定义的sort和优先队列函数
食物链 并查集 ✦✦✦✦✧ ✦✦✦✦✧ 需要维护关系域,有可能输入只有一组数据

2.5 图论

解题报告链接:挑战程序设计竞赛(第二章:2.5 图论)

题目名称 题目类型 题目难度 复习指数 备注
Roadblocks 最短路径 ✦✦✦✧✧ ✦✦✦✧✧ 次短路径,dijstra变体
Conscription 最小生成树 ✦✦✦✧✧ ✦✦✦✧✧ kruskal
Layout 最短路径 ✦✦✦✧✧ ✦✦✦✧✧ Bellman算法,构图

2.6 数学问题

解题报告链接:挑战程序设计竞赛(第二章:2.6 数学问题)

题目名称 题目类型 题目难度 复习指数 备注
线段上格点个数 最小公约数 ✦✧✧✧✧ ✦✧✧✧✧ 注意问题的转化,欧几里得算法
双六 扩展欧几里得算法 ✦✦✧✧✧ ✦✦✧✧✧ 扩展欧几里得算法
素数有关的算法 最短路径 ✦✦✧✧✧ ✦✦✧✧✧ 素数测试,埃氏筛法,大区间求素数,快速幂

扩展欧几里得的一些习题及参考资料
acm之旅之扩展欧几里得

2.7 第二章习题总结

解题报告链接:挑战程序设计竞赛(第二章习题总结)

题目名称 题目类型 题目难度 复习指数 备注
Curling 2.0 深搜 ✦✦✦✧✧ ✦✦✦✧✧ 题意理解,dfs
Meteor Shower 广搜 ✦✦✦✧✧ ✦✦✦✧✧ 细节问题
Smallest Difference 穷竭搜索 ✦✦✦✧✧ ✦✦✦✦✧ 全排列模板题
Hopscotch 穷竭搜索/深搜 ✦✦✦✧✧ ✦✦✧✧✧ set的使用
Cleaning Shifts 贪心 ✦✦✦✧✧ ✦✦✦✧✧ 区间覆盖问题
Radar Installation 贪心 ✦✦✦✧✧ ✦✦✦✦✧ 注意问题的转化,区间
Stall Reservations 贪心/优先队列 ✦✦✦✧✧ ✦✦✦✦✧ 贪心策略的选择
Yogurt factory 贪心/脑洞 ✦✦✦✧✧ ✦✦✧✧✧ 脑洞
Packets 贪心 ✦✦✦✧✧ ✦✦✦✧✧ 思考缜密,模拟
Allowance 贪心 ✦✦✦✦✧ ✦✦✦✦✧ 贪心策略的选择,代码
Stripies 贪心 ✦✦✧✧✧ ✦✧✧✧✧ 贪心策略
Protecting the Flowers 贪心 ✦✦✦✧✧ ✦✦✦✧✧ 代码的优化
Sumsets 动态规划 ✦✦✦✧✧ ✦✦✦✦✧ 完全背包的优化
Sunscreen 优先队列/贪心 ✦✦✦✦✧ ✦✦✦✧✧ 脑洞,贪心
Moo University - Financial Aid 优先队列/排序 ✦✦✦✦✧ ✦✦✦✧✧ 有想象力地使用优先队列
Wireless Network 并查集 ✦✦✧✧✧ ✦✦✧✧✧ 并查集模板
Find them, Catch them 并查集 ✦✦✦✧✧ ✦✦✦✧✧ 类似食物链,种类并查集模板
Six Degrees of Cowvin Bacon 最短路径 ✦✦✧✧✧ ✦✦✧✧✧ 使用多源最短路径(Floyd)
Wormholes 判断负环 ✦✦✧✧✧ ✦✦✧✧✧ Bellman_Ford
Silver Cow Party 最短路径 ✦✦✦✧✧ ✦✦✦✧✧ 思维转换(正反两次)
Bad Cowtractors 最小生成树 ✦✦✧✧✧ ✦✦✧✧✧ 最大生成树
Six Degrees of Cowvin Bacon 最短路径 ✦✦✧✧✧ ✦✦✧✧✧ 使用多源最短路径(Floyd)
Out of Hay 最短路径 ✦✦✧✧✧ ✦✧✧✧✧ 主要是理解题意
Dead Fraction 数论 ✦✦✦✦✧ ✦✦✧✧✧ 数学推导,不具有一般性,较难
Prime Path 素数/BFS ✦✦✧✧✧ ✦✦✦✧✧ 将数论和搜索联系在了一起,好题
X-factor Chains 素数 ✦✦✦✧✧ ✦✦✦✧✧ 素因数分解
Semi-prime H-numbers 素数 ✦✦✧✧✧ ✦✦✦✧✧ 简单打表
Raising Modulo Numbers 快速幂 ✦✧✧✧✧ ✦✦✧✧✧ 快速幂方法的使用
Pseudoprime numbers 快速幂 ✦✧✧✧✧ ✦✦✧✧✧ 快速幂方法的使用

第三章:出类拔萃——中级篇

3.2 常用技巧精选(一)

解题报告链接:挑战程序设计竞赛(第三章:3.2 常用技巧精选(一))

题目名称 题目类型 题目难度 复习指数 备注
Subsequence 尺取法 ✦✦✦✧✧ ✦✦✦✧✧ 尺取法模板题
Jessica’s Reading Problem 尺取法 ✦✦✧✧✧ ✦✦✦✧✧
Face The Right Way 翻转技巧(一维) ✦✦✦✧✧ ✦✦✦✧✧ 明确翻转规则
Fliptile 翻转技巧(二维) ✦✦✦✧✧ ✦✦✦✧✧ 翻转思想
Physics Experiment 碰撞问题 ✦✦✦✧✧ ✦✦✦✧✧ 类比Ants问题
4 Values whose Sum is 0 折半枚举 ✦✦✦✧✧ ✦✦✦✧✧ 折半+二分查找
超大0-1背包问题 折半枚举 ✦✦✦✧✧ ✦✦✦✧✧ 类比V和W比较大的0-1背包
Subset 折半枚举 ✦✦✦✧✧ ✦✦✦✧✧ 牢记折半模板

你可能感兴趣的:(挑战程序设计竞赛,挑战程序设计竞赛——经验篇)