2024年java基础现场编程题买彩票

java基础现场编程题买彩票题目 1 投注是从红色球号码中选择 6 个号码 不能重复 从蓝色球号码中选择 1 个号码 组合为一注投注号码的投注 2 红色球号码为 1 33 蓝色球号码为 1 16 3 开奖号码和购彩者号码均随机生成 红球按照从小到大的顺序进行排列 最后额外加入蓝色球 1 2 3 4 5 6 1 注意 蓝色球不参与整体的顺序 4 中奖规则如下 一等奖 红球 6 蓝球 1 二等奖 红球 6 三等奖

大家好,我是讯享网,很高兴认识大家。



题目:

1.投注是从红色球号码中选择6个号码(不能重复),从蓝色球号码中选择1个号码,组合为一注投注号码的投注
2.红色球号码为[1-33],蓝色球号码为[1-16]
3.开奖号码和购彩者号码均随机生成,红球按照从小到大的顺序进行排列,最后额外加入蓝色球
1 2 3 4 5 6 + 1
注意:蓝色球不参与整体的顺序
4.中奖规则如下:
一等奖: 红球6 + 蓝球1
二等奖: 红球6
三等奖: 红java基础现场编程题买彩票球5 + 蓝球1
四等奖: 红球5 或 (红球4 + 蓝球1)
五等奖: 红球4 或 (红球3 + 蓝球1)
六等奖: (红球2 + 蓝球1) 或 (红球1 + 蓝球1) 或 蓝球1

大体思路:

1.使用TreeSet接收红球生成的随机数,可以保证不重复而且会自然排序

2.蓝球由于数量较少,使用String接收

3.中奖只要对应位置的数据一致就好了,可以使用遍历数组进行对比,使用count接收一致的数据个数

4.通过count确认得到几等奖

代码:

本人错误思路:

将红球数据生成后存入String中,调用String的截取方法,试用两个字符串最大公共部分的方法找到公共部分,公共部分的长度/2即为中奖号码个数。

思路问题:没考虑到数据长度可能为个位数,且截取数据两边可能有相等数据。

小讯
上一篇 2024-12-24 16:15
下一篇 2024-12-31 17:26

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/10586.html