【PTA】7-6 海盗分赃 (Java)
P 个海盗偷了 D 颗钻石后来到公海分赃,一致同意如下分赃策略:
首先,P 个海盗通过抽签决定 1 - P 的序号。然后由第 1 号海盗提出一个分配方案(方案应给出每个海盗分得的具体数量),如果能够得到包括 1 号在内的绝对多数(即大于半数)同意,则按照该分配方案执行,否则 1 号将被投入大海喂鲨鱼;而后依次类似地由第 2 号、第 3 号等等海盗提出方案,直到能够获得绝对多数同意的方案出现为止,或者只剩下最后一位海盗,其独占所有钻石。请编写一个程序,给出第 1 号海盗的钻石分配方案中自己分得的钻石数量。
附带的三个假定:
- “聪明”与“贪婪”假定:每个海盗总能够以本人利益最大化作为行为准则;
- “人性化”假定:在能够取得尽量多钻石的情况下,海盗不会故意致同伙于死地;
- “无偏见”假定:海盗之间没有个人恩怨,分给其他海盗钻石的次序以小序号优先为原则。
输入格式:
输入在一行中给出 2 个正整数 D 和 P(3≤P≤D≤100)。
输出格式:
输出第 1 号海盗的钻石分配方案中自己分得的钻石数量。
输入样例:
10 7
输出样例:
6
假设有七个人,十颗宝石
分别为
1 2 3 4 5 6 7
---------0 10 只剩两人时,7号利益最大化才会同意,只能这么分
--------9 1 0 此时6要是反对只剩两人时一分也分不到
------7 0 2 1 6号7号这一轮不同意到了下一轮就会少一颗宝石
----7 0 1 0 2
--6 0 1 2 1 0
6 0 1 2 0 0 1
而此题只要求第一人分多少,而且告知了最少三人
得出规律为d-p/2-1
而三人时只需要分一枚出去为d-1
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner s=new Scanner(System.in);int d=s.nextInt();int p=s.nextInt();if(p==3)System.out.println(d-1);elseSystem.out.println(d-p/2-1);s.close();}
}
【PTA】7-6 海盗分赃 (Java)相关推荐
- PTA编程题:海盗分赃(Java) (25 分)
海盗分赃 (25 分) P 个海盗偷了 D 颗钻石后来到公海分赃,一致同意如下分赃策略: 首先,P 个海盗通过抽签决定 1 - P 的序号.然后由第 1 号海盗提出一个分配方案(方案应给出每个海盗分得 ...
- 递归用法之“海盗分赃难题”
海盗分赃难题: 十个海盗要瓜分100枚金币,为此他们拟定了以下规则. 从船长到厨子每个海盗由高到低共分十个等级,分配权在最高等级的海盗手里.他可以任意分配每个海盗的所得,但必须取得一半或一半以上海盗( ...
- 详解:海盗分赃(25 分)
海盗分赃(25 分) P 个海盗偷了 D 颗钻石后来到公海分赃,一致同意如下分赃策略: 首先,P 个海盗通过抽签决定 1 - P 的序号.然后由第 1 号海盗提出一个分配方案(方案应给出每个海盗分得的 ...
- 海盗分赃问题-----简化问题,分而治之
目录 问题描述: 问题分析: 问题求解:(简化问题,分而治之) 假设有两个海盗进行分赃:(4号和5号) 假设有三个海盗进行分赃:(3号.4号和5号) 假设有四个海盗进行分赃:(2号.3号.4号和5号) ...
- [益智]:海盗分赃(博弈论的实用)
海盗分赃 题目描述: 问题分析 看动漫理解这个问题 正确解答 题目升级: 正确思路 题目再升级: 正确思路 题目变种: 正确思路 现实生活中这种问题还有哪些变化呢? 再给大家分享一个关于金币的小游戏( ...
- 海盗分赃(8行代码搞定!)
海盗分赃 题目 答案 最简版本(8行代码) 详细流程 注意 题目 答案 最简版本(8行代码) #include<stdio.h> int main() {int money,n;scanf ...
- (算法)海盗分赃_2
分享一篇趣文(来自伯乐在线:http://blog.jobbole.com/70395/),同样是海盗分赃问题,这篇文章以诙谐幽默的口吻以及浅显易懂的对话来解释海盗分赃问题. 与上一篇博文海盗分赃_1 ...
- 【博弈论】关于三姬分金(五海盗分赃)的博弈论问题分析
在看<天行九歌>的时候,看到了这个问题,之前在刷OI竞赛题的时候也刷到过一个,今天打算理一下关于这个问题的思路. 首先三姬分金和五海盗分赃其实都是一类问题"纳什均衡", ...
- PTA 7-98 海盗分赃 (25分)
P 个海盗偷了 D 颗钻石后来到公海分赃,一致同意如下分赃策略: 首先,P 个海盗通过抽签决定 1 - P 的序号.然后由第 1 号海盗提出一个分配方案(方案应给出每个海盗分得的具体数量),如果能够得 ...
最新文章
- IIS+PHP下调用WebService初试
- Ansible管理节点过多导致的超时问题解决方法
- Linux系统没有home分区,我的linux系统home分区挂不上了
- 设计模式中的观察者模式
- 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。
- java StringUtils方法全览
- 特斯拉好事连连:自动驾驶新硬件性能提升10倍,两名新董事昨晚上任,股价涨5.6%...
- WordPress 实用SEO插件总结
- pmp学习资料_201912期PMP学习内容汇总表
- Android9怎么剪辑音频,Timbre – 安卓(Android )视频剪辑软件,在手机上对视频、音频进行合并、剪辑、格式转换、分割...
- 建筑CAD基础设计【2】
- Spring Cloud Netflix Eureka组件服务注册及发现源码浅析
- 数据挖掘工具---Spark SQL使用
- 【点云配准】点云配准中常用的评价指标(豪斯多夫距离/Hausdorff Distance、倒角距离/Chamfer Distance和陆地移动距离/Earth Mover‘s Distan
- HFDS命令行操作(开发重点)
- Gliffy - 一个在线的画UML图,流程图的工具
- word多个标题一不能显示在一页
- 初识MIMO(二):MIMO的信道容量及其仿真
- Ghost硬盘对拷图解教程(双硬盘克隆)
- linux 查看tdagent进程,Fluentd (td-agent) 日志收集系統
热门文章
- 多尺度双边滤波及基于小波变换的非线性扩散
- Floating Action Button(漂浮按钮)--谷歌新的设计包
- 静态常量池、运行时常量池、字符串常量池
- openssl 生成证书 server.key server.crt
- 如何向领导汇报工作?
- 2021年中国沙丁鱼发展现状及进出口状况分析: 沙丁鱼出口量进一步增加[图]
- 辉崽崽的博客开通了,仅此记录一下
- 图像去噪--代码实现
- 学计算机随堂笔记,随堂笔记 计算机网络原理 自考 自学考试 4741.doc
- 【观察】跨境电商“独立站”模式崛起,如何抓住下一个红利爆发时代?