题目:
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即为中奖号码个数。
思路问题:没考虑到数据长度可能为个位数,且截取数据两边可能有相等数据。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/10586.html