HDOJ-ACM1011(JAVA)
转载声明:原文转自:http://www.cnblogs.com/xiezie/p/5569721.html

搞懂题意之后,个人感觉,这道题题目的描述相当的费解~
做这道题目,个人感觉,涉及到树的遍历(深度搜索)、动态规划的知识点。
由于网上找不到什么好的问题解释,我把自己的翻译放上来了。
问题描述:
你是星河战队的领袖,被派来摧毁的虫子基地。基地建在地下。它实际上是一个巨大的洞穴,它包括许多与隧道相连的房间。每个房间都被一些虫子所占据,他们的大脑藏在一些房间里。科学家刚刚研制出了一种新武器,想要在一些大脑中进行实验。你的任务是摧毁整个基地,捕捉尽可能多的大脑。
杀死所有的害虫总是比捕捉他们的领头容易。为你提供了一张地图,上面标记了所有的房间内的害虫的数量以及存在一个领头的可能性。洞穴的结构就像一棵树——从入口开始仅有一条路径通向每个房间。为了尽快结束战斗,你不想等待士兵就推进到下一个房间,你必须留下一些士兵在每个房间抗击所有里面的害虫。他们曾经去过的房间不再进入。
一个士兵可以杀死20害虫。因为你没有足够的士兵,你只能选择进入一些房间,其他的工作让神经毒气做。同时,你应该最大限度地提高捕捉一个大脑的可能性。为了简化这个问题,你只要最大限度地提高对所取房间的所有可能性的总和。制定这样的计划是一项艰巨的工作。你需要电脑的帮助。
输入:
两个数(正整数):
N:房间数
M:士兵数
N*2个数(非负整数):
a: 害虫的个数
b: 存在一个领头的可能性(百分比)
(N-1)*2个数(整数):
c: 入口号
d: 通向哪个房间
如:上述的第一种输入(如图描述)

这道题给人最大的迷惑是二叉树,实际上的树形结构
以下是我写的测试输入:
6 10 50 10 40 10 40 20 65 30 70 30 100 50 1 2 1 3 2 4 2 5 3 6
-----------80//输出结果 1 1 20 7
-----------7 5 10 50 10 40 10 40 20 65 30 70 30 1 2 1 3 2 4 2 5
-----------50 7 10 50 10 40 10 40 20 65 30 70 30 100 50 20 60 1 2 1 3 2 4 2 5 3 6 4 7
-----------110 7 10 50 10 40 10 40 20 65 30 70 30 100 50 20 50 1 2 1 3 2 4 2 5 3 6 5 7
-----------100 8 10 50 10 40 10 40 20 65 30 70 30 100 50 20 50 80 80 1 2 1 3 2 4 2 5 3 6 5 7 3 8
-----------110 17 10 50 10 40 10 40 20 65 30 20 30 80 50 20 50 60 80 20 10 20 50 20 60 20 40 20 10 20 70 20 80 20 140 20 150 1 2 1 3 2 4 2 5 3 6 5 7 3 8 8 9 6 10 6 11 8 12 12 13 7 14 7 15 4 16 4 17
-----------200 4 2 1 1 1 2 1 3 1 4 1 2 1 3 1 4
-------5 5 3 1 1 1 2 1 3 1 4 1 5 1 2 1 3 1 4 3 5
-------9
提交了N次,一直WA,未AC状态。。。
HDOJ-ACM1011(JAVA)的更多相关文章
- hdoj 1753 (Java)
刚刚开始用Java,代码难免不够简洁. import java.math.BigDecimal; import java.util.Scanner; public class Main { publi ...
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- HDOJ/HDU 2203 亲和串(简单的判断~Java的indexOf()方法秒)
Problem Description 人随着岁数的增长是越大越聪明还是越大越笨,这是一个值得全世界科学家思考的问题,同样的问题Eddy也一直在思考,因为他在很小的时候就知道亲和串如何判断了,但是发现 ...
- HDOJ(HDU) 2192 MagicBuilding(用Java的Map做了下)
Problem Description As the increase of population, the living space for people is becoming smaller a ...
- HDOJ(HDU) 2133 What day is it(认识下Java的Calendar类---日期类)
Problem Description Today is Saturday, 17th Nov,2007. Now, if i tell you a date, can you tell me wha ...
- hdoj 1753 大明A+B 高精度/java
大明A+B Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- hdoj 1002 A + B Problem II 高精度 java
A + B Problem II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序
FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- HDOJ 1326. Box of Bricks 纯水题
Box of Bricks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
随机推荐
- NGUI系列教程二
接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点 ...
- 1行代码为每个Controller自定义“TabBar”-b
这篇文章大致会带你实现以下的功能,废话少说,先看东西: JPNavigationController.gif Q&A:Demo里都有那些东西? 01.关于自定义导航栏 01.第一个控制器的导航 ...
- msisdn与imsi简介
=======================================imsi========================================1 定义:imsi=MCC+MNC ...
- 试求由a,b,c三个字母组成的n位符号串中不出现aa图像的符号串的数目
1.错误解法 共3^n,含aa的共3^(n-2),那么相减8*3^(n-2). 分析:aa的左右两边不能是a,所以结果肯定大了. 2.正确解法 假设符合条件的符合串 ...
- 开发安全的Web程序
目录0x1:什么是安全的Web应用程序0x2:过滤输入的数据0x3:转义输出的数据0x4:Register Globals0x5:magic_quotes_gpc0x6:错误信息的报告0x7:文件的安 ...
- unity 导出 android安装包配置方案
原地址:http://blog.csdn.net/u012085988/article/details/17393111 1.jdk本人安装的是win32版的(虽然系统是64位的.但听说装64位的导出 ...
- ANDROID_MARS学习笔记_S02_003_AutoCompleteTextView
一. public class CountriesActivity extends Activity { protected void onCreate(Bundle icicle) { super. ...
- 第二章 LM3S USB处理器
2.1 LM3S处理器简介 Luminary Micr公司Stellaris所提供一系列的微控制器是首款基于Cortex-m3的控制器,它们为对成本尤其敏感的嵌入式微控制器应用方案带来了高性能的32位 ...
- MyBatis学习总结2
这一篇讲述MyBatis对数据库的CRUD操作,内容不做重复,只做添加:查看学习总结1 一.使用MyBatis对表执行CRUD操作——基于XML的实现 在SQL映射文件userMapper.xml中添 ...
- [Hadoop源码解读](二)MapReduce篇之Mapper类
前面在讲InputFormat的时候,讲到了Mapper类是如何利用RecordReader来读取InputSplit中的K-V对的. 这一篇里,开始对Mapper.class的子类进行解读. 先回忆 ...