【LeetCode笔记】299. 猜数字游戏 (Java、偏数学)
文章目录
- 题目描述
- 思路 && 代码
题目描述
- 顶级阅读题!
- 今天的每日一题,感觉评论区大佬的写法挺值得记录的,就又水了一篇答题文~
思路 && 代码
- O(n)、O(1)
- 核心代码:Case 2 的两个 if 处理,挺精髓的!
- 这里主要是先存储状态,在后期满足条件的情况下维护奶牛的计数值!
class Solution {public String getHint(String secret, String guess) {int x = 0, y = 0;int[] counts = new int[10]; // 存储未被猜对的秘密数字for(int i = 0; i < secret.length() && i < guess.length(); i++) {// Case 1: 公牛if(secret.charAt(i) == guess.charAt(i)) {x++;} else { // Case 2:奶牛if(counts[guess.charAt(i) - '0']-- > 0) { // 2.1:猜了啥就减少啥y++; // 满足 > 0 情况,有得减,y++ !}if(counts[secret.charAt(i) - '0']++ < 0) { // 2.2:对应啥就增加啥y++; // 满足 < 0 情况,之前被减过,y++ !}}}return x + "A" + y + "B";}
}
- 无注释
class Solution {public String getHint(String secret, String guess) {int x = 0, y = 0;int[] counts = new int[10]; for(int i = 0; i < secret.length() && i < guess.length(); i++) {if(secret.charAt(i) == guess.charAt(i)) x++;else { if(counts[guess.charAt(i) - '0']-- > 0) y++;if(counts[secret.charAt(i) - '0']++ < 0) y++;}}return x + "A" + y + "B";}
}
【LeetCode笔记】299. 猜数字游戏 (Java、偏数学)相关推荐
- 299. 猜数字游戏
299. 猜数字游戏 你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 写出一个秘密数字,并请朋友猜这个数字是多少.朋友每猜测一次,你就会给他一个包含下述信息的提示: 猜 ...
- 猜数字游戏 - Java实现
猜数字游戏 系统自动生成一个随机整数(1-100), 然后由用户输入一个猜测的数字. 如果输入的数字比该随机数小, 提示 "低 了", 如果输入的数字比该随机数大, 提示 &quo ...
- 简单猜数字游戏Java实现
问题 设计一个猜数字游戏,系统随机产生一个100以内的整数,然后由玩家猜测该数字,如果没猜中,系统提示玩家数字过大或过小,玩家根据提示继续猜,如果五次均没有猜中,游戏自动结束. 原理很简单,直接上代码 ...
- 猜数字游戏java编程_Java编写猜数字小游戏
本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 以下是Java语言写的一个猜数字小游戏引用片段: import java.text.SimpleDateFormat; impo ...
- LeetCode 299. 猜数字游戏
1. 题目 你正在和你的朋友玩 猜数字(Bulls and Cows)游戏:你写下一个数字让你的朋友猜. 每次他猜测后,你给他一个提示,告诉他有多少位数字和确切位置都猜对了(称为"Bulls ...
- LeetCode 299猜数字游戏
你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 写出一个秘密数字,并请朋友猜这个数字是多少.朋友每猜测一次,你就会给他一个包含下述信息的提示: 猜测数字中有多少位属于数 ...
- 299. 猜数字游戏(简单题)
题目描述: 你正在和你的朋友玩 猜数字(Bulls and Cows)游戏:你写下一个数字让你的朋友猜.每次他猜测后,你给他一个提示,告诉他有多少位数字和确切位置都猜对了(称为"Bulls& ...
- 18行代码AC-Leecode 299. 猜数字游戏——Leecode每日一题系列
今天是坚持每日一题打卡的第十三天 题目链接:https://leetcode-cn.com/problems/bulls-and-cows/ 题解汇总:https://zhanglong.blog.c ...
- 猜数字游戏——Java图形界面
题目要求: 用户首先选择猜数范围,10以内,或者100以内,然后点击"得到一个随机数"按钮,系统生成一个随机整数.用户在文本框中输入猜测的整数,点击确定按钮,有标签显示" ...
- 299. 猜数字游戏。
你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 写出一个秘密数字,并请朋友猜这个数字是多少.朋友每猜测一次,你就会给他一个包含下述信息的提示: 猜测数字中有多少位属于数 ...
最新文章
- 草根最容易逆袭的地方就是互联网
- Linux Rsync服务详解(二)——Rsync服务实战
- ACM投稿ccs concepts查询The ACM Computing Classification System
- java网上在线考试系统代码_Java+JavaWeb在线考试系统
- html5实例绘制时钟代码,使用html5 canvas 画时钟代码实例分享
- 使用DCMTK实现DICOM文件的读写
- python爬虫 笔趣阁
- 华为云服务器搭建个人网站/博客
- Java程序员考研失败后的面试经历,oppo、VIVO、等面经
- 2018ACM-ICPC焦作站E题Resistors in Parallel
- android studio中崩溃无法查看log?
- 20、中断和动态时钟显示
- 客户体验决胜2022,低代码是快速取胜之道
- Linux快捷键大全
- pip换源-pip国内源
- android 百度地图禁止双击放大缩小,leaflet-div上禁止地图的拖动,放大缩小双击事件...
- 2011年老古董MacbookPro(MD314 二代i7+SSD)升级macOS + windows11日记 - 双系统
- 系统重装后no bootable device
- gbq可以算出土建量吗_广联达土建算量软件问题合集100条(上)
- 表的描述(键、码、候选码[关键字])
热门文章
- Leetcode--31. 下一个排列
- python嵌套列表法实现树_python – 将嵌套的括号树转换为嵌套列表
- linux du 文件大小排序,du命令 实现Linux 某个文件夹下的文件按大小排序
- @modelattribute注解用postman测试怎么传参_谁要是再敢用Map传参,我过去就是一JIO...
- 乐观锁和悲观锁_什么是悲观锁和乐观锁?
- 三宝机器人怎么充电_巨人通力导致吉祥三宝+36号故障怪现象的又一因素
- 常用的分隔符有哪三种_加固博士:常用防水材料大比拼,究竟花落谁家?
- python十个运维实战项目_干货 | 这4个Python实战项目,让你瞬间读懂Python!
- RandomShuffleQueue '_1_input/shuffle_batch/random_shuffle_queue' is closed and has insufficient elem
- matplotlib与seaborn的一些使用