牛客剪刀石头布Java 模拟+贪心
题目:链接:https://ac.nowcoder.com/acm/contest/8997/C
来源:牛客网
已知石头剪刀布的规则是:布赢石头,石头赢剪刀,剪刀赢布。
每局胜者得2分,平局双方各得1分,败者不得分。
牛牛和牛妹一共玩了n局石头剪刀布,他们不记得每局自己出的是什么,只记得自己一共出了多少个石头、多少个剪刀、多少个布。
牛牛想知道,自己最高可能得多少分?
代码:
import java.util.Scanner;
public class Main{public static void main(String[] args) {Scanner sc = new Scanner(System.in);//第一行一个正整数,代表游戏的总局数。int n = sc.nextInt();//第二行三个整数a1、b1、c1,分别代表牛牛出的石头数、剪刀数和布数。int a1 = sc.nextInt();int b1 = sc.nextInt();int c1 = sc.nextInt();//第三行三个整数a2、b2、c2,分别代表牛妹出的石头数、剪刀数和布数。int a2 = sc.nextInt();int b2 = sc.nextInt();int c2 = sc.nextInt();int score = 0;//win//石头对剪刀int min1 = Math.min(a1,b2);a1 -= min1; b2 -= min1; score += min1*2;//剪刀对布int min2 = Math.min(b1,c2);b1 -= min2; c2 -= min2; score += min2*2;//布对石头int min3 = Math.min(c1,a2);c1 -= min3; a2 -= min3; score += min3*2;//tie//石头对石头int min4 = Math.min(a1,a2);a1 -= min4; a2 -= min4; score += min4;//剪刀对剪刀int min5 = Math.min(b1,b2);b1 -= min5; b2 -= min5; score += min5;//布对布int min6 = Math.min(c1,c2);c1 -= min6; c2 -= min6; score += min6;System.out.println(score);
}
}`
注意点:
做模拟题先把思路理清楚再来敲代码。
牛客剪刀石头布Java 模拟+贪心相关推荐
- Java算法:牛客网Java版剑指Offer全套算法面试题目整理及电子档,Java算法与数据结构面试题,面试刷题、背题必备!牛客网剑指offer
剑指offer(java版) 牛客网Java版剑指Offer全套题目67道 资源来源于网络 目录 1.二维数组中的查找 2.替换空格 3.从尾到头打印链表 4.重建二叉树 5.用两个栈实现队列 6.旋 ...
- Java面试题16 牛客 以下java程序代码,执行后的结果是()
Java面试题16 牛客 以下java程序代码,执行后的结果是() 1 2 3 4 5 6 7 8 9 10 public class Test { public static void ma ...
- 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类...
不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个"伪全局"的概 ...
- 牛客网Java刷题知识点之构造函数可以调用一般函数,但是一般函数不可以直接调用构造函数...
不多说,直接上干货! 通过 牛客网Java刷题知识点之构造函数是什么.一般函数和构造函数什么区别呢.构造函数的重载.构造函数的内存图解 我们对构造函数有了一个比较清楚的认识,当我们在创建对象时,我们会 ...
- 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合...
不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...
- 牛客网Java刷题知识点之ArrayList 、LinkedList 、Vector 的底层实现和区别
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
- 牛客网Java选择题练习
牛客网Java选择题练习 2021/1/12 2021/1/13 2021/1/14 2021/1/16 2021/1/17 2021/1/18 2021/1/20 2021/1/21 2021/1/ ...
- 牛客网-Java专项练习11
牛客网-Java专项练习11 1.关于抽象类和接口叙述正确的是? ( ) A.抽象类和接口都能实例化的 B.抽象类不能实现接口 C.抽象类方法的访问权限默认都是public D.接口方法的访问权限默认 ...
- 牛客网java刷题笔记2019-1-4
牛客网java刷题笔记 2019-1-4 1.java中可以用类中构造器调用其他类构造器(这个和C++中构造函数很类似)用于初始化程序变量值, 构造器和方法的区别: 功能和作用的不同 构造器是为了创建 ...
最新文章
- python openCV 实现镜像翻转flip()
- Python即Python解释器的发展史
- 如何缩短visual studio行号的距离
- var与dynamic区别
- 深入理解JavaScript系列:闭包(Closures)
- Replication--复制延迟的诊断和解决
- wxpython 表格粘贴,wxpython在整个应用程序中剪切复制和粘贴
- getWriter() has already been called for this response
- 【LKJ】LKJ2000型记录装置显示界面说明
- qq服务器正在升级维护中,建议您稍后再尝试打开.谢谢!,用友通维护锦集
- 【小程序项目开发 -- 京东商城】uni-app 商品分类页面(下)
- FTP上传失败报错解决
- php 抓取百度快照时间,php获取网站百度快照日期的方法
- window location href is not a function错误解决
- matlab三相触发电路图,三相过零触发电路图
- 关于java web开发中的很多小问题集锦
- 搜索引擎可搜到微信公众号内容?百度回应:不能
- 2021Java最新真实面试题汇总(持续更新)
- Java17线程进程
- win10中anaconda安装tensorflow时报错Traceback (most recent call last): File “E:\Anaconda3\lib\site-packag