实现一个抽奖方法,输入一个小于 100 的整数参数,作为中奖率,返回用户 是否中奖的 Boolean 结果。
这个是之前碰到的一个面试题
这个题目的问题在于输入的是中奖率,返回的却是中奖结果,两者没什么关联,所以其中的中奖判断怎么去实现是个问题。
我的思路:生成一个关键数A,生成一个动态数组B,大小由中奖率决定。例如10%,则数组的大小为10,同时生成10个数。关键数A去数组里走一遍,有则true反之false.
代码我没有跑,大致写了下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | public boolean draw4Prize( int percent){ int randomParA = new Randow().nextInt( 100 )+; //先生成一个100以内的随机数; int [] size= new int (percent); //设置一个组数,假如中奖率为10,即可存放 10 个数; int j= 0 ; for ( int i= 0 ;i<percent;i++) { int randomParB = new Randow().nextInt( 100 ); if (randomParB==size[j]) Break; else size[j]=randomParB; j++; } for ( int i= 0 ;i<percent;i++) { if (randomparA==size[i]) return true ; else return false ; } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端