历年真题记录(未完待续

//按照洛谷历年真题由易到难排序
纯暴力模拟
 
判断质数、26个字母开26个桶(虽然暴力但问题不大
 
打表+模拟(会打表真的太重要了
 
一边输入一边判断
 
纯暴力模拟(不离散化也没嘚关系
 
纯暴力模拟(我太菜了只能暴力
 
string也可以这样子排序!12+34=1234!
 
仔细观察题面,再运用简单的数学思想,不难找出规律(2017年tg初赛T24也考到了幻方
 
STL大法好!map+set(迭代器别忘了set<int>::iterator it !
 
贪心,同时减去平均数,注意一些小细节
 
动规(注意倒序循环
 
打表+预处理(对数据的估计以及数组的预设!
 
感觉这种题目都能猜到肯定是要用斐波那契数列的,通过纸上模拟得出系数的规律(不过在智商不够的时候暴力枚举也是一种可行方案呐,运行很快的
 
枚举+模拟,主要考察二维矩阵和(用树状数组或者二维前缀和
 
大水题,直接模拟
 
一堆字符串处理,没什么好说的
 
贪心,需要思考一下
 
同上,if(a[i]>a[i-1])sum+=a[i]-a[i-1];
 
同样还是考察对字符串的处理
 
递推,本题和某道分苹果的题很相似,都是套路,但是仍有一些剪枝需要小心,不要想得太简单啦!详情见此处
 
用一个小根堆,每次取两次堆顶,再把和加入堆
 
二分+暴力枚举
 
深搜+并查集,最后枚举首尾是否相连
 
处理余数时要小心,注意余数一定是正数丫!
 
dalao说是结论题叫我不要做了呐,跳过
 
可以说是非常水的一道题了,会写快速幂就行
 
模拟+打表,特殊情况要考虑全面
 
数学思想!!!也许可以这样理解
/*假设两种钱每种最少要拿一次(也就是不能不拿),不能凑成的最小钱数为k,因为a和b互质,显然,k = a * b,(当k = a * b 时,由于ab互质,要么a拿b个,要么b拿a个)。

由于a和b可以一样都不拿,所以ans = k - a - b = a * b - a - b*/

 

暴搜,仔细理解题面!
 
 
二分答案模板
 
深搜(寻找公共子串的时候很有趣
 
在纸上写一写,很明显的贪心
 
并查集找环(注意更新深度和父节点编号
 
比较经典的DP,加上高精的话有点难办
 
搜索+DP真的很强o( ̄▽ ̄)d
 
DP考虑上一个转移过来的状态,开四维,每一维表示该种卡片使用了多少次,再考虑输入换一种存储方式
 
有依赖的背包问题,其实肥肠容易理解,在第二重循环里面分情况考虑即可(多加几个if,当然这道题只是个例比较好处理
 
BFS+string简直不要太好用!replace(m,sa[i],length(),sb[i])学到咯
 
背包DP+从小到大贪心考虑
原文地址:https://www.cnblogs.com/ljy-endl/p/11686957.html