当前位置: 首页 > news >正文

xampp网站后台html代码图片

xampp网站后台,html代码图片,哪些彩票网站可做代理赚钱,seo网站诊断书文章目录 问题描述解题思路分析1. 数据预处理2. 特殊情况处理3. 普通情况计算4. 结果输出 Java代码实现复杂度分析与优化 在经典德州扑克中#xff0c;“葫芦”是一种较强的牌型。它由五张牌组成#xff0c;其中三张牌面值相同#xff0c;另外两张牌面值也相同。本文将探讨一… 文章目录 问题描述解题思路分析1. 数据预处理2. 特殊情况处理3. 普通情况计算4. 结果输出 Java代码实现复杂度分析与优化 在经典德州扑克中“葫芦”是一种较强的牌型。它由五张牌组成其中三张牌面值相同另外两张牌面值也相同。本文将探讨一个有趣的变形问题在限定总牌面值的情况下如何找到符合规则的最大“葫芦”组合。 问题描述 我们需要从给定的一组牌中找到一个满足以下条件的“葫芦”组合 该组合由三张相同牌面值的牌 (a) 和两张相同牌面值的牌 (b) 组成牌面值的总和不能超过指定的最大值 max在多个可能组合中优先选择牌面值 (a) 较大的组合若 (a) 相同则选择 (b) 较大的组合。 牌面值遵循德州扑克的大小规则即 A1 K13 Q12 J11 10 9 … 2。 解题思路分析 1. 数据预处理 首先我们需要统计输入牌组中每张牌的数量。这样做可以快速识别哪些牌出现了三次及以上用于构成牌 (a)哪些牌出现了两次及以上用于构成牌 (b)。通过一个哈希映射HashMap来实现统计能够保证在 (O(n)) 时间复杂度内完成遍历和计数。 2. 特殊情况处理 根据题目中的描述A牌1具有特殊的地位。为了最大化组合的大小我们需优先考虑是否能使用A作为三张牌或两张牌的一部分并在满足条件的情况下更新“葫芦”组合的值。 若 A 出现了三次或更多则A可能作为三张牌中的 (a)。在这种情况下我们需要在其他牌中找到数量至少为2的牌 (b)并确保该组合的牌面和在最大值 max 之内。若 A 出现了两次则A可能作为两张牌中的 (b)。在这种情况下我们需要在其他牌中找到数量至少为3的牌 (a)并判断该组合是否符合最大值要求。 3. 普通情况计算 当 A 不能参与组合或未能找到符合条件的组合时我们可以在其他牌中寻找“葫芦” 从具有三张相同牌面值的牌中选择最大的作为 (a)从具有两张相同牌面值的牌中选择最大的作为 (b)比较多个组合的总和以确保不会超过最大值 max。 4. 结果输出 在所有符合条件的“葫芦”组合中我们输出最大牌面值的 (a) 和 (b) 值若没有符合条件的组合则输出 [0, 0]。 Java代码实现 以下是完整的 Java 实现代码 import java.util.HashMap; import java.util.Map;public class bigestHulu {public static int[] solution(int n, int max, int[] array) {// 由于最大A的牌面值为1所以要特殊考虑// 1. 首先用map记录array中每个元素出现的次数MapInteger, Integer map new HashMap();// 为了后面特殊考虑map.put(1,0);for (int card : array) {map.put(card, map.getOrDefault(card, 0) 1);}int x 0; // 三张相同的牌面值int y 0; // 两张相同的牌面值// 2.1 A出现3次以上if (map.get(1) 3){// 遍历map找到最大的bfor (Integer b : map.keySet()) {if (b ! 1 map.get(b) 2){// 没有爆牌if (1 * 3 b * 2 max){if (b y){x 1;y b;}}}}return new int[]{x, y};}// 2.2 A出现2次if (map.get(1) 2){// 遍历map找到最大的bfor (Integer b : map.keySet()) {if (b ! 1 map.get(b) 3){// 没有爆牌if (1 * 2 b * 3 max){if (b y){x b;y 1;}}}}return new int[]{x, y};}// 3. A不被选择的情况for (Integer a : map.keySet()) {if (map.get(a) 3){for (Integer b : map.keySet()) {if (b ! a map.get(b) 2){// 没有爆牌if (a * 3 b * 2 max){// 规则是优先比较牌a的大小若牌a相同则再比较牌b的大小if (a x || (a x b y)){x a;y b;}}}}}}if (x 0 y 0){return new int[]{0, 0};}else {return new int[]{x, y};}}public static void main(String[] args) {// Add your test cases hereSystem.out.println(java.util.Arrays.equals(solution(9, 34, new int[]{6, 6, 6, 8, 8, 8, 5, 5, 1}), new int[]{8, 5}));System.out.println(java.util.Arrays.equals(solution(9, 37, new int[]{9, 9, 9, 9, 6, 6, 6, 6, 13}), new int[]{6, 9}));System.out.println(java.util.Arrays.equals(solution(9, 40, new int[]{1, 11, 13, 12, 7, 8, 11, 5, 6}), new int[]{0, 0}));}} 复杂度分析与优化 时间复杂度主循环遍历了牌组中的元素并将其计数复杂度为 (O(n))。随后对计数结果进行两重嵌套的选择在所有可能的三张和两张牌中查找最大组合这部分复杂度约为 (O(k^2))其中 (k) 是去重后牌面值的数量。空间复杂度使用了一个 HashMap 来存储牌的计数空间复杂度为 (O(k))。 外链找到最大“葫芦”组合
http://www.dnsts.com.cn/news/73356.html

相关文章:

  • 郑州微网站制作网站内容授权书
  • html 手机网站开发网站制作报价doc
  • 建站行业市场容量建企业网站一般多少钱
  • dede织梦仿站网站建设建设彩票网站犯法吗
  • 代码做网站图片怎么插dz论坛怎么做视频网站吗
  • 住房和建设部执业资格注册中心网站王野摩托车
  • 广州网站建设新科分公司开发公司截留占用住宅专项维修资金
  • 如何做外文网站公众号开发用什么语言
  • 2021年给我一个网站做图标去什么网站找
  • 如何偷别人dedecms网站的模板如何做一家门户网站
  • 网站电话改了子页怎么改wordpress设置用户注册资料
  • 合肥网站开发需要多企业网站建设因素分析
  • 国外网站的设计风格国外有做塑料粒子的网站吗
  • 免费做调查的网站网站建设合同内容与结构
  • 医疗营销网站建设聊城门户网站
  • 深圳购物网站建设上饶网站开发
  • 网站建设源码包在线设计平台用户分析
  • 商务网站规划与设计实训心得巩义企业网站托管服务商
  • 麒麟区住房和城乡建设局网站拟定网站优化方案
  • 天津智能网站建设哪里有优化大师免费版下载
  • 网站建设未完成开发高端市场应该注意
  • 设置网站404旅游兼职网站建设
  • 龙岗微网站建设网站建设方案书安全性
  • 门户网站要求免费电子版个人简历可编辑
  • 外国自适应企业网站网站开发课程设计总结
  • 农业服务网站建设方案在线ps图
  • 跑腿网站建设网站建设服务费做什么分录
  • 东莞网站建设aj工作室企业网站功能对比分析
  • 如何做后台网站增删改免费的创建个人网站
  • 网站备案制度人才招聘网站大全