笨笨的果实采摘


描述

笨笨在小山顶上种了一棵果树,秋天了,果树结出了许多许多的果子,笨笨要去摘果子。
这是一棵可以结出3种不同果实的树,它的果实长在树枝的分叉处和树顶上。
果实分3种:普通果实、奇异果实和稀有果实。
这颗树的第一个分叉可以用一个2进制码表示(也就是许多的“1”和“0”),
而第一个分叉又分成2个分叉,分别用第一个分叉的前半段和后半段表示(从中间分开),
其他分叉也如此。分叉分到最后只剩下“1”或“0”时就成了树顶。
每个分叉只能分成2个分叉。
表示这棵树第一个分叉的2进制码必定是2的乘方位。
例如:
1 0 1 0
\ / \ /
10 10
\ /
1010
这就是一棵笨笨种的树。
三种果实的分辨方式为:
普通果实:既有“1”又有“0”;
奇异果实:只有“1”;
稀有果实:只有“0”。
每种果实的价值不同,普通果实1元,奇异果实2元,稀有果实5元。
笨笨能摘到的果实范围是一定的,他想知道他所能摘到果实的总价值。
像刚刚所示的“1010”树,它有3个普通果实,2个奇异果实和2个稀有果实,
若笨笨能摘到最高2,最低0,那么他就能得到所有的果实,果实的总价值为3*1+2*2+5*2=17元。


格式

输入格式

第一行一个数n,表示这个2进制码的位数是2的多少次乘方(即长度为2^n,0<=n<=15)。
第二行2个数u,d,表示笨笨可以摘到的最大高度和最小高度(0<=d<=u<=100000)。
第三行为表示第一个分叉的位数为2^n位的2进制数。
输出格式

一个数,笨笨所能摘到果子的最大总价值。
样例1
样例输入1[复制]

3
3 0
10001011
样例输出1[复制]

40


限制

时限1s。


提示

第一个分叉的高度为0,后面的依次递增,每层加1。
样例解释:可以有4层共15个分叉(包括树顶),
5个普通果实,5个奇异果实,5个稀有果实。
5*1+5*2+5*5=40

来源

笨笨原创。

第0层指的是叶子,第n层指的是根

分析

该题只是一个简单的递归即可完成。


代码如下

program p1501;
var n,u,d:longint;str1:ansistring;cost:qword;
procedure division(n,step:longint;str1:ansistring);
beginif (step>=d)and(n>=0)thenbeginif step<=uthenbeginif pos('0',str1)=0thenbegincost:=cost+2;endelsebeginif pos('1',str1)=0thenbegincost:=cost+5;endelsebegincost:=cost+1;end;end;end;if n>0 thenbegindivision(n-1,step-1,copy(str1,1,(1<<(n-1))));division(n-1,step-1,copy(str1,(1<<(n-1))+1,(1<<(n-1))));end;end;
end;beginreadln(n);readln(u,d);readln(str1);division(n,n,str1);write(cost);
end.

评测结果

测试数据 #0: Accepted, time = 1 ms, mem = 1200 KiB, score = 10
测试数据 #1: Accepted, time = 2 ms, mem = 1200 KiB, score = 10
测试数据 #2: Accepted, time = 0 ms, mem = 796 KiB, score = 10
测试数据 #3: Accepted, time = 1 ms, mem = 800 KiB, score = 10
测试数据 #4: Accepted, time = 2 ms, mem = 796 KiB, score = 10
测试数据 #5: Accepted, time = 1 ms, mem = 1164 KiB, score = 10
测试数据 #6: Accepted, time = 1 ms, mem = 796 KiB, score = 10
测试数据 #7: Accepted, time = 4 ms, mem = 1092 KiB, score = 10
测试数据 #8: Accepted, time = 15 ms, mem = 1056 KiB, score = 10
测试数据 #9: Accepted, time = 15 ms, mem = 1060 KiB, score = 10
Accepted, time = 42 ms, mem = 1200 KiB, score = 100

呃呃,最近没啥好说的了。。。

Vijos P1501 笨笨的果实采摘相关推荐

  1. Vijos P1571 笨笨的导弹攻击【最长上升子序列+DP】

    背景 在那遥远的地方,有个小目标-- 笨笨:导弹准备! 路人甲:(这么小个目标都要欺负--)老大,导弹只有一部分可以用-- 笨笨:不管那么多,有多少就打多少! 描述 为了彻底打击目标,笨笨要使用足够多 ...

  2. 笨笨工作室告别十月模拟赛

    笨笨工作室告别十月模拟赛 为了大家适应今年复赛电子版题目特意整理了一份电子版题目: /Files/hhdllhflower/笨笨工作室告别十月模拟赛.rar Chess Background 笨笨:& ...

  3. 原创:纯手工打造CSS像素画--笨笨熊系列图标

    纯手工打造CSS像素画--笨笨熊系列图标 作者:冰极峰 转载请注明出处 在cssplay网站看到有一组CSS像素画,于是也想摩仿一下,于是在网络上找到一组头像图标,看其结构比较简单,就拿它开刀吧!先看 ...

  4. vmware nat模式网络不通_笨笨狗教你如何解决VMware虚拟机桥接网络不通问题?

    笨笨狗教你如何解决VMware虚拟机桥接网络不通问题? 背景介绍 在我们日常使用Kali Linux时,有时候我们将虚拟机网络连接方式设置为桥接后发现虚拟机Kali Linux无法ping通网络,或者 ...

  5. 笨笨图片批量下载器 V0.3 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程] new...

    前言 从[笨笨图片批量抓取下载 V0.2 beta]到[笨笨图片批量下载器 V0.3 beta]时间将近2个月,不是说这个升级版本开发了这么久,实在是懒,呵呵: )再加有时候工作忙.学习,多的时间就不 ...

  6. 木老师教笨笨课堂——系列讲座(从函数指针到委托) 四、C#的委托

    四.C#的委托 ".Net以委托的形式实现了函数指针的概念."--<C#高级编程(第四版)> 现在看这句话,可能笨笨同学就有感觉了. 看书可能就是这样,想当初天山童姥的 ...

  7. jquery开发的”天才笨笨碰“游戏

    前段时间湖南卫视的快乐大本营里有一款"天才笨笨碰"游戏非常火.这款游戏主要是考选手的声母联想词语的能力. 小篇在看完这个节目后用jquery制作了"天才笨笨碰" ...

  8. 笨笨图片批量下载器[C# | WinForm | 正则表达式 | HttpWebRequest]

    截图      源代码:     /Files/over140/ImagesBatchDownloading.rar 欢迎大家多多指教,可以考虑加入多线程和异步获取数据,并且正则表达式有待改善:) 请 ...

  9. 笨笨图片批量抓取下载 V0.2 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程]...

    一.     先贴一张图,这个界面就是程序的主界面了: 二.     部分代码说明(主要讲解异步分析和下载): 异步分析下载采取的策略是同时分析同时下载,即未等待数据全部分析完毕就开始把已经分析出来的 ...

最新文章

  1. 可疑文件_如何识别文件的真假
  2. TVM:通过Python接口(AutoTVM)来编译和优化模型
  3. 芯原创始人戴伟民:嵌入式人工智能与芯粒的历史机遇
  4. .NET Core,.NET Framework和Xamarin有什么区别?
  5. Linux入门相关基础知识
  6. 5款免费又好用的甘特图软件,总有一款适合你
  7. 杭电OJ刷题指南(ACM)
  8. matlab 安装 cvx 和 mosek 以及 gurobi
  9. 作为无人机方面做嵌入式编写的飞控总结6--IMU惯性系统和GPS导航系统融合小结1(惯性导航算法)
  10. arm跑操作系统的意义_上手一个具体而微的 ARM 操作系统
  11. Java蓝桥杯 算法提高 九宫格
  12. 关于路由器花生壳动态域名无法连接的解决方法
  13. 【AI SoC】全志R329 高算力低功耗,当下智能音箱的最优解?
  14. LTE上报的CQI、PMI、RI
  15. 莫队算法小介绍——看似暴力的莫队算法
  16. 漏刻有时云守护数据可视化画质感知状态迭代说明文档
  17. 避坑外连腾讯云服务器redis 6379
  18. 小米天气api html,小米天气app
  19. 番茄工作法总结-第六章:应变
  20. H60-RS232自动售货机主板规格书

热门文章

  1. 图像处理22-外接矩形
  2. 分享10款超强的开发插件,工欲善其事,必先利其器
  3. 数据库常见面试题(带答案,开发者必看)
  4. 智能卡接口控制器(SIM)
  5. [android] 手机卫士欢迎细节和主界面
  6. Android 蓝牙 IOS ANCE协议介绍 - 史上最详细
  7. Java面向对象:多态——基于继承的向上转型、方法重写、动态绑定
  8. unity 渲染问题
  9. 鸿蒙系统2.0升级机型,鸿蒙系统2.0升级将覆盖华为的大面积的主流机型
  10. vue2--基于zm-tree-org实现公司部门组织架构图