信息学奥赛一本通-提高篇
信息学奥赛一本通-提高篇
王江奎
这个作者很懒,什么都没留下…
展开
-
深度搜索剪枝——数的划分
【题目描述】将整数n分成k份,且每份不能为空,问有多少种分法?【输入格式】两个整数n,m(6<n<=200,2<=m<=6)【输出格式】输出不同的分法数【样例输入】7 3【样例输出】4对于这种搜索题,关键就在于剪枝:确定搜索的顺序、搜索的上下界,剪枝函数等等这道题数据比较小,之间判断搜索的上下界就可以解决。因为分法是组合,即没有顺序,为了提高效率,我们人为地规定...原创 2019-07-21 10:19:50 · 259 阅读 · 0 评论 -
贪心算法——选择不相交区间问题
题目描述:设有n个活动的集合,其中每个活动都要求使用同一个资源,而在同一时间内只有一个活动能够使用这一资源,每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi(si<fi),如果选择了活动i,则他在时间区间[si,fi)占用资源。求最多可以进行多少个活动。【输入格式】第一行一个正整数n(n<1000),接下来n行,每行两个整数si和fi【输出格式】输出尽可能多的相互兼...原创 2019-07-20 17:07:04 · 609 阅读 · 0 评论 -
贪心算法-区间选点问题-种树
【题目描述】一条街道的一边有几座房子。因为环保原因居民想要在路边种些树,路边的地区被分割成n块,并被编号为1~n。每块大小为一个单位尺寸且最多可总一棵树。每个居民想在门前种些树并制定了三个数b,e,t,这三个数代表居民想在b和e之间最少种t棵树,当然b<=e,t<=e-b+1,允许居民想种树的子区域可以交叉,由于资金短缺的原因,环保部门想请你求出能够满足所有居民的种树要求的书的最少数量...原创 2019-07-21 11:09:00 · 1143 阅读 · 0 评论 -
校门外的树——树状数组+区间修改
校门外的树【题目分析】题目描述的是一种区间修改,看起来好像要用线段树。但是对于这种区间内部没有差别并且查询的是区间内的类别的问题,是可以转化为树状数组进行的。毕竟树状数组更加简单。我们的关注点应该放在区间的端点处,然后通过统计端点得到答案。我们不妨用数组a1保存左端点的个数,用数组a2保存右端点的个数(从开始到x)假如查询的是区间[l,r],那么a1[r]是区间[1,r]的种类数,a2[l-...原创 2019-07-22 09:28:06 · 195 阅读 · 0 评论