国家集训队2009论文集数位计数问题解法研究

合集下载

国家集训队2004论文集 朱晨光

国家集训队2004论文集 朱晨光

优化,再优化!——从《鹰蛋》一题浅析对动态规划算法的优化安徽省芜湖市第一中学朱晨光目录Ø关键字 (2)Ø摘要 (2)Ø正文 (2)n引言 (2)n问题 (2)n分析 (3)u算法一 (3)u算法二 (4)u算法三 (4)u算法四 (6)u小结 (7)u算法五 (7)Ø总结 (10)Ø结束语 (11)关键字优化动态规划模型摘要本文就Ural 1223 《鹰蛋》这道题目介绍了五种性能各异的算法,并在此基础上总结了优化动态规划算法的本质思想及其一般方法。

全文可以分为四个部分。

第一部分引言,阐明优化动态规划算法的重要性;第二部分给出本文讨论的题目;第三部分详细讨论这道题目五种不同的动态规划算法,并阐述其中的优化思想;第四部分总结全文,再次说明对于动态规划进行优化的重要性,并分析优化动态规划的本质思想与一般方法。

正文引言在当今的信息学竞赛中,动态规划可以说是一种十分常用的算法。

它以其高效性受到大家的青睐。

然而,动态规划算法有时也会遇到时间复杂度过高的问题。

因此,要想真正用好用活动态规划,对于它的优化方法也是一定要掌握的。

优化动态规划的方法有许多,例如四边形不等式、斜率优化等。

但是这些方法只能对某些特定的动态规划算法进行优化,尚不具有普遍的意义。

本文将就《鹰蛋》这道题目做较为深入的分析,并从中探讨优化动态规划的本质思想与一般方法。

问题有一堆共M个鹰蛋,一位教授想研究这些鹰蛋的坚硬度E。

他是通过不断从一幢N层的楼上向下扔鹰蛋来确定E的。

当鹰蛋从第E层楼及以下楼层落下时是不会碎的,但从第(E+1)层楼及以上楼层向下落时会摔碎。

如果鹰蛋未摔碎,还可以继续使用;但如果鹰蛋全碎了却仍未确定E,这显然是一个失败的实验。

教授希望实验是成功的。

例如:若鹰蛋从第1层楼落下即摔碎,E=0;若鹰蛋从第N层楼落下仍未碎,E=N。

这里假设所有的鹰蛋都具有相同的坚硬度。

给定鹰蛋个数M与楼层数N。

国家集训队2003论文集 项荣璟

国家集训队2003论文集 项荣璟

问题三——分析(4)


维护一个表Hlst,表头指针p,表尾指针q。 在递推到第i阶段,bot…top:Si中第bot到第top个元素 (即:lst[bot],lst[bot+1],…,lst[top])都与h联系。 Hlst[k].bot=Hlst[k-1].top+1。
p
H l s t
q
top bot Hlist[k ] h value

问题一——算法分析
for i:=n downto 1 do g(i,1):=f(i,n); {边界条件} for k:=2 to m do 计算边界g(n-k+1,k); j:=n-k+1; for i:=n-k downto m-k+1 do if f(I,j)<=g(j+1,k-1) then g(i,k):=g(j+1,k-1){性质一} else if f(i,i)>=g(i+1,k-1) then 【 g(i,k):=f(i,i); j:=i 】 else 【while f(i,j-1)>=g(j,k-1) do j:=j-1; {定si,k} g(i,k):=min{f(i,j),g(j,k-1)} {性质三} if g(i,k)=g(j,k-1) then j:=j-1】 end_for_k 外层每循环一次,j递减的工作量是O(n)。因此总的复杂度O(n2)。

pk q
F (i ) li min Hlst [k ].value
value值不断更新,在求F(n),F(n-1),…,F(0)
时都要察看最小的value。 堆!
问题三——算法分析


国家集训队2004论文集 黄源河

国家集训队2004论文集 黄源河

浅谈图论模型的建立与应用广东省中山市第一中学黄源河【关键字】图论模型、建立、转化【摘要】在近几年的信息学竞赛中,图论题目层出不穷。

图论作为一个新生的数学分支,相比其他数学分支来说,具有许多自有的特性。

利用图论解题,通常具有高效、简洁的便利。

有了这门工具,并不意味就能很好地解决问题,还在于我们能否熟练地识别与建立一系列的图论模型。

本文通过一些实例,简单地介绍一下图论建模的方法。

【正文】引言应用数学知识解题时,首先要通过对实际问题的分析,研究组建用以描述这个问题的数学模型。

使用数学的理论和方法对模型进行分析从而得到结果,再返回去解决现实的实际问题。

图论模型是一类特殊的数学模型,建立图论模型,就是要从问题的原型中,抽取对我们有用的信息和要素,把问题抽象为点、边、权的关系。

经过图论建模之后,杂乱无章的信息变得有规可寻,要素的内在联系体现在了点、边、权的关系。

有不少经典的图论模型可以直接用特定的算法解决,一些复杂的问题,只要能认清问题的本质,把握问题的关键,建立合适的图论模型,往往能转化为我们熟悉的经典问题。

本文要写的,正是我在图论建模方面的一点心得与认识。

例题分析〖例题1〗Place the Robots (ZOJ)[问题大意]有一个N*M(N,M<=50)的棋盘,棋盘的每一格是三种类型之一:空地、草地、墙。

机器人只能放在空地上。

在同一行或同一列的两个机器人,若它们之间没有墙,则它们可以互相攻击。

问给定的棋盘,最多可以放置多少个机器人,使它们不能互相攻击。

[分析]在问题的原型中,草地,墙这些信息不是我们所关心的,我们关心的只是空地和空地之间的联系。

因此,我们很自然想到了下面这种简单的模型:以空地为顶点,有冲突的空地间连边,我们可以得到下面的这个图:那么,问题转化为求图的最大独立集问题。

众所周知,这是NP-完全问题。

看来,建立这样的模型,没有给问题的求解带来任何便利,我们必须建立一个行之有效的新模型。

国家集训队2008论文集浅谈信息学竞赛中的区

国家集训队2008论文集浅谈信息学竞赛中的区

浅谈信息学竞赛中的区间问题华东师大二附中周小博【摘要】本文对一些常用的区间问题模型做了简单介绍,包括一些算法及其正确性的证明,并从国际、国内的信息学竞赛与大学生程序设计竞赛中选了近10道相关例题,进行简要分析。

【关键字】区间模型转化贪心动态规划优化在信息学竞赛中,有很多问题最终都能转化为区间问题:例如从若干个区间中选出一些满足一定条件的区间、将各个区间分配到一些资源中、或者将一些区间以某种顺序放置等。

这类问题变化繁多,解法各异,需要用到贪心、动态规划等算法,并可以用一些数据结构优化算法。

本文将从几个方面对区间问题做一个简单的介绍,给出一些算法及其正确性的证明,具体分如下几个方面进行讨论:1.最大区间调度问题2.多个资源的调度问题3.有最终期限的区间调度问题4.最小区间覆盖问题5.带权区间调度、覆盖问题6.区间和点的有关问题我们将对上述每个问题都给出基本模型、算法、证明及其实现,并从ACM-ICPC、CEOI、CTSC等比赛中选出了近10道相关例题,进行简要分析,有的例题还给出了各种不同的算法及其时间效率的分析。

本文中所讨论的问题主要由两个部分组成,一部分为近几年来各类竞赛题的归纳总结,另一部分来自于参考文献。

数轴上有n 个区间,选出最多的区间,使得这些区间不互相重叠。

算法:将所有区间按右端点坐标从小到大排序,顺序处理每个区间。

如果它与当前已选的所有区间都没有重叠,则选择该区间,否则不选。

证明:显然,该算法最后选出的区间不互相重叠,下面证明所选出区间的数量是最多的。

设i f 为该算法所接受的第i 个区间的右端点坐标,i g 为某最优解中的第i 个区间的右端点坐标。

命题1.1 当1≥i 时,该算法所接受的第i 个区间的右端点坐标i f ≤某最优解中的第i 个区间的右端点坐标i g 。

该命题可以运用数学归纳法来证明。

对于1=i ,命题显然为真,因为算法第一个选择的区间拥有最小右端点坐标。

令1>i ,假定论断对1-i 为真,即11--≤i i g f 。

IOI2021国家集训队作业总结部分题解

IOI2021国家集训队作业总结部分题解

IOI2021国家集训队作业总结部分题解前⾔(写题解鸽了)下⽂中会对作业的每道题⽬做个⼈评价。

尽量客观,但难免有主观意愿,如有异议可友好讨论。

评价的符号表达:E 表⽰不在作业中或质量较低的题⽬,⼀般只有很⽆聊的模拟或阅读或板⼦会质量较低,这部分题⽬⼀定不会写题解;H 表⽰质量中等的题⽬,⼀般是知识不难、算法思考的弯路较少、坑点也很少的题,这部分⼀些有点意思的可能会写题解;C 表⽰较⾼质量的题⽬,算法难度(包括证明)、代码难度、⼤坑点、命题创意都可以体现⾼质量,⼤部分会写题解。

G 表⽰质量极⾼的题⽬,⼀般是我被坑了很久或者卡了很久或者完全不会(可能现在都不怎么会)或者印象特别深刻的题⽬,这部分⼀定会写题解。

Easy Hard Chaos Glitch因为是集训队作业所以质量⼤部分和难度相关,但很有趣的清新题的质量也会标的⽐较⾼。

更新⽇志2020.11.24:DJ,ED,MB,SI,UI2020.11.20:加了 EI 的 BB 证明;EC,EJ,LD,LE2020.11.16:BB,CJ,DA,DH,ME2020.11.13:FC,FF,KE,JG2020.11.12:AJ,AL,BK,CH,HI,KD,TEA.WF2014编号A B C D E F G H I J K L评价C C H E C H C C C G H G***J. Skiing按照 \(y\) 坐标从⼩到⼤排序。

有⼀个显然的 dp:设 \(f_{i,j}\) 表⽰从 \(i\) 开始以初速度为 \(j\) 滑最多能滑多少个点。

但是其状态⾁眼可见的多。

注意到对于 \(f_{i,j}\) 中相邻且值相等的 \(j\) 可以合并成⼀个区间⼀起转移。

故可以将 \(f_i\) 的所有状态看成若⼲个三元组 \((l,r,t)\)表⽰速度在 \([l,r]\) 内答案为 \(t\)。

有⼀个结论是对于确定的 \(i\),\(f_i\) 构成的三元组个数是 \(O(n)\) 的,但我找了 wyp 和 slz,后⾯⼜通过⽞秘⽅式找了 WF2014 的直播和 bmerry 的博客,都没有找到这个结论的证明。

探求一道2009伊朗国家集训队试题下界

探求一道2009伊朗国家集训队试题下界

探求一道2009伊朗国家集训队试题下界
陈宇;柳铭
【期刊名称】《中学数学研究》
【年(卷),期】2014(000)004
【摘要】2009伊朗国家集训队一道试题:
【总页数】3页(P48-50)
【作者】陈宇;柳铭
【作者单位】江苏省姜堰中等专业学校 225500;南京师范大学教育学院 210023【正文语种】中文
【相关文献】
1.一道伊朗国家选拔不等式试题下界的改进 [J], 何灯;李云杰
2.一道伊朗国家集训队试题下界的加强及推广 [J], 汪耀生
3.一道2009年伊朗国家选拔试题推广的简证 [J], 王红权
4.一道2009年Serbia国家集训队试题的推广 [J], 朱纯刚
5.一道国家集训队测试题的另解及思考 [J], 朱天明
因版权原因,仅展示原文概要,查看原文内容请购买。

2009全国数学建模竞赛命题与解题思路解析

解题思路 14
一种比较典型的仿真优化方法是:对每一位等待 一种比较典型的仿真优化方法是: 入院病人,以该病人当日入院的公平性(以到达 入院病人,以该病人当日入院的公平性( 先后计)与病床使用效率(分类考虑) 先后计)与病床使用效率(分类考虑)两方面综 合排序(例如求两个指标的加权和),然后按排 合排序(例如求两个指标的加权和),然后按排 ), 序结果安排当日入院病人,由此得到公平合理的 序结果安排当日入院病人, 住院方案。按此方案进行仿真, 住院方案。按此方案进行仿真,再统计各项评价 指标值,并与FCFS方案作比较,此问即告完成。 FCFS方案作比较 指标值,并与FCFS方案作比较,此问即告完成。
解题思路 3
这一类以排队论及仿真优化方法为主要解决 方法的题目, CUMCM年竞赛题目中,还 不多见。而这一类随机服务系统优化的问题, 不多见。而这一类随机服务系统优化的问题, 在现实实际中却是大量存在的,因此, 在现实实际中却是大量存在的,因此,在以 反映现实生活中的数学建模问题为己任的大 学生数学建模竞赛中,出现这一类题目, 学生数学建模竞赛中,出现这一类题目,也 是很自然的事情,MCM中如04年 中如04 是很自然的事情,MCM中如04年B题“游乐场 快速通道问题” 05年 快速通道问题”,05年B题“高速公路收费站 问题” 就是两个这类问题的实例。 问题”,就是两个这类问题的实例。
解题思路
12
第二问
本问主要考核能否给出一个相对合理的病 床安排模型,主要目标为: 床安排模型,主要目标为:提高病床有效利用 率以及提高公平度。 率以及提高公平度。 就提高病床有效利用率而言,病人术后住 就提高病床有效利用率而言, 院时间是一个不可优化的量, 院时间是一个不可优化的量,所以只能在术前 等待时间上作文章。 等待时间上作文章。经对题目所给数据的分析 可知: 可知:对白内障病人的入院时间加以限制成为 提高效率的必然选择。 提高效率的必然选择。

NOIP2009题解

全国一等奖:160 全国二等奖:120
河南省分数线:185
第一题:潜伏者
• 解析: • 解决本题只需创建1个长度为26的 数组即可进行转换,于是想在本题 拿分就要在读懂题意的基础上判断 何时输出“Failed”。
• 转换具体代码: • Int a[26],b;ห้องสมุดไป่ตู้
• for (b=0;b<str2.length();b++) • if((a[str1[b]'A']!=1)&&(a[str1[b]'A']!= str2 [b]-'A')) break;
else a[str1[b]-'A']=str2[b]-'A';
(a用来记录密码,str1,str2分别 为读入的第一第二行)
• 输出“Failed”的注意事项: • 无26个不同加密字母时必须输出 • “每个字母只对应一个唯一的‘密 字’”
第二题:Hankson的趣味题 第二题:Hankson的趣味题
解析: 在我个人看来,本题要想得满分则不能 对a0或a1或b0或b1进行分解质因数(或许 我的分解质因数写的太麻烦)因为按一般 分解质因数的计算次数是4675*2000*12 (最少更改次数与判断次数【一次取模或 乘方运算相当于4次一般运算{‘+’,‘-’, ‘*’,‘/’}】)这样的话就超时了。
如果要用的话可以对b0或b1进行数域划分(类 属骗分,因为只有看了数据才敢这样弄)这样倒 是可以让分解质因数的次数为2000*12*1000 (1000为估计值)这样可以采取以下算法: 首先普及一个公式: 将a分解质因数为(上界为n,下界为i=1) Πpi^ci,b分解质因数为(上界为n,下界为i=1) Πpi^di,则a,b的最小公倍数为: [a,b]=(上界为n,下界为i=1)Πpi^max(ci,di) 同理:若max改为min则是求最大公约数。 所以先将a1/a0,b1/b0,b0分解质因数。

国家集训队2007论文集5.杨沐《浅析信息学中

浅析信息学中的“分”与“合”福建省福州第三中学杨沐目录【摘要】..................................................................... 错误!未定义书签。

【关键字】................................................................. 错误!未定义书签。

【正文】..................................................................... 错误!未定义书签。

一、引言............................................................... 错误!未定义书签。

二、例题分析 ...................................................... 错误!未定义书签。

[例一]牛奶模版 ............................................ 错误!未定义书签。

[例二]树的重建 ............................................ 错误!未定义书签。

[例三]最优序列 ............................................ 错误!未定义书签。

三、总结............................................................... 错误!未定义书签。

【感谢】..................................................................... 错误!未定义书签。

【参考文献】............................................................. 错误!未定义书签。

国家集训队1999论文集 来煜坤

把握本质,灵活运用——动态规划的深入探讨浙江省萧山中学来煜坤【关键字】动态规划构思实现【摘要】本文讨论了动态规划这一思想的核心内容和其基本特点,探讨了动态规划思想的适用范围,动态规划子问题空间和递推关系式确立的一般思路。

通过例子说明在子问题确立过程中的一些问题的解决办法:通过加强命题或适当调节确定状态的变量等手段帮助建立动态规划方程,通过预处理使动态规划的过程容易实现等。

接着,分析动态规划实现中可能出现的空间溢出问题及一些解决办法。

总结指出,动态规划这一思想,关键还在于对不同的问题建立有效的数学模型,在把握本质的基础上灵活运用。

一、引言动态规划是一种重要的程序设计思想,具有广泛的应用价值。

使用动态规划思想来设计算法,对于不少问题往往具有高时效,因而,对于能够使用动态规划思想来解决的问题,使用动态规划是比较明智的选择。

能够用动态规划解决的问题,往往是最优化问题,且问题的最优解(或特定解)的局部往往是局部问题在相应条件下的最优解,而且问题的最优解与其子问题的最优解要有一定的关联,要能建立递推关系。

如果这种关系难以建立,即问题的特定解不仅依赖于子问题的特定解,而且与子问题的一般解相关,那么,一方面难以记录下那么多的“一般解”,另一方面,递推的效率也将是很低的;此外,为了体现动态规划的高时效,子问题应当是互相重叠的,即很多不同的问题共享相同的子问题。

(如果子问题不重叠,则宜使用其它方法,如分治法等。

) 动态规划一般可以通过两种手段比较高效地实现,其一是通过自顶向下记忆化的方法,即通过递归或不递归的手段,将对问题最优解的求解,归结为求其子问题的最优解,并将计算过的结果记录下来,从而实现结果的共享;另一种手段,也就是最主要的手段,通过自底向上的递推的方式,由于这种方式代价要比前一种方式小,因而被普遍采用,下面的讨论均采用这种方式实现。

动态规划之所以具有高时效,是因为它在将问题规模不断减小的同时,有效地把解记录下来,从而避免了反复解同一个子问题的现象,因而只要运用得当,较之搜索而言,效率就会有很大的提高。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档