阿里一道抽奖游戏算法题水解。
来源:互联网 发布:阿里云解析内网ip 编辑:程序博客网 时间:2024/04/28 03:06
1.一个抽奖游戏,有7个连续整数的球(比如1,2,3,4,5,6,7),连续随机抽取3个,如果连续抽取的两个球是连续的,则中奖,问中奖几率多大?
思路
首先顺着遍历,找出所有两个相邻的连续数,第三个数比前两个数都大。
第三个数的位置可能在首位,可能在末尾。
然后逆着遍历,找出所有两个相邻的连续数,第三个数比前两个数都小。
第三个数的位置可能在首位,可能在末尾。
以上遍历一共找出120种情况,放入list进行去重,得到最终结果。
import java.util.ArrayList;import java.util.List;public class TestA { public static void main(String[] args) { int cout = 0; List<String> list = new ArrayList<>(); // 顺着来 for (int i = 1; i <= 7; i++) { for (int j = 1; j <= 7; j++) { if (i != j && i - j == 1 || i - j == -1) { int m = 0; if (i > j) { m = i + 1; } else { m = j + 1; } for (; m <= 7; m++) { System.out.println("i:" + i + " j:" + j + " m:" + m);// String s1 = "i:" + i + " j:" + j + " m:" + m; String s1 = "" + i + "" + j + "" + m; list.add(s1); cout++; System.out.println("m:" + m + " i:" + i + " j:" + j); String s2 = "" + m + "" + i + "" + j; list.add(s2); cout++; } } } } // 倒着来 for (int i = 7; i >= 1; i--) { for (int j = 7; j >= 1; j--) { if (i != j && i - j == 1 || i - j == -1) { int m = 7; if (i > j) { m = j - 1; } else { m = i - 1; } for (; m >= 1; m--) { System.out.println("i:" + i + " j:" + j + " m:" + m); String s1 = "" + i + "" + j + "" + m; list.add(s1); cout++; System.out.println("m:" + m + " i:" + i + " j:" + j); String s2 = "" + m + "" + i + "" + j; list.add(s2); cout++; } } } } System.out.println(cout); // 移除相同的 for (int i = 0; i < list.size(); i++) { for (int j = i + 1; j < list.size(); j++) { if (list.get(j).equals(list.get(i))) { System.out.println(list.get(j) + "----------"); list.remove(list.get(j)); } } } }}
这个代码写的挺粗糙的,有待优化。
阅读全文
0 0
- 阿里一道抽奖游戏算法题水解。
- 一道阿里电话面试中的算法题
- Java实现游戏抽奖算法
- 空瓶子装水解谜游戏
- 阿里云的一道题
- 一道阿里校春招笔试题
- 阿里的一道笔试题
- 一道阿里笔试题-javascript
- 一道阿里校春招笔试题
- 阿里笔试的一道题
- 昨天写了一道抽奖系体统题
- [面经]阿里游戏一面的算法题
- 抽奖 算法
- 抽奖算法
- 抽奖算法
- 抽奖-算法
- 抽奖算法
- 游戏Algorithm----抽奖算法----奖品有权重的情况探讨
- xpath , 抽取字段常见error
- android炫酷动画源码,QQ菜单、瀑布流、二维码源码
- jQuery选择器
- 两次调用encodeURI来解决乱码问题
- MFC产生的cpp文件中 DEBUG_NEW 与 THIS_FILE的作用
- 阿里一道抽奖游戏算法题水解。
- android ImageSelector 仿微信朋友圈选择图片
- 分布式项目的idea版本源码
- C#面试题
- 删除 WordPress 中不再使用的自定义文章类型的文章数据
- 代码干货 | ionic sqlite的使用
- 1.MongoDB 简介与配置
- 自动化测试的转行
- Vue中子组件与父组件之间的双向绑定