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

富源县建设局网站外贸企业网站建设哪家好

富源县建设局网站,外贸企业网站建设哪家好,网站怎么换空间商,网站设置不安全文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 回溯 二【题目难度】 困难 三【题目编号】 679.24 点游戏 四【题目描述】 给定一个长度为4… 文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 回溯 二【题目难度】 困难 三【题目编号】 679.24 点游戏 四【题目描述】 给定一个长度为4的整数数组 cards 。你有 4 张卡片每张卡片上都包含一个范围在 [1,9] 的数字。您应该使用运算符 [, -, *, /] 和括号 ( 和 ) 将这些卡片上的数字排列成数学表达式以获得值24。你须遵守以下规则: 除法运算符 / 表示实数除法而不是整数除法。 例如 4 /(1 - 2 / 3) 4 /(1 / 3) 12 。 每个运算都在两个数字之间。特别是不能使用 “-” 作为一元运算符。 例如如果 cards [1,1,1,1] 则表达式 “-1 -1 -1 -1” 是 不允许 的。 你不能把数字串在一起 例如如果 cards [1,2,1,2] 则表达式 “12 12” 无效。 如果可以得到这样的表达式其计算结果为 24 则返回 true 否则返回 false 。 五【题目示例】 示例 1: 输入: cards [4, 1, 8, 7]输出: true解释: (8-4) * (7-1) 24 示例 2: 输入: cards [1, 2, 1, 2]输出: false 六【题目提示】 cards.length 41 cards[i] 9 七【解题思路】 首先要读懂题意搞清楚四种运算方式然后使用回溯解决该问题 每次取出两个数字进行相应的运算然后组成新的数组该数组包括运算后的结果和剩下的数字然后递归重复进行运算如果最后发现满足24点的要求即可返回真否则返回假 有些细节需要注意 注意精度问题因为是实数运算所以需要使用浮点类型注意除法中的除数不能为零加法和乘法满足交换律可以通过剪纸减少计算次数从而提高效率 最后返回结果即可具体细节可以参考下面的代码 八【时间频度】 时间复杂度 O ( 1 ) O(1) O(1)空间复杂度 O ( 1 ) O(1) O(1) 九【代码实现】 Java语言版 class Solution {// 目标值private static final double target 24;// 误差private static final double deviation 1e-6;// 四种运算注意加和乘放在前两位因为这两种运算满足交换律方便后续处理private static final int add 0;private static final int mul 1;private static final int sub 2;private static final int div 3;public boolean judgePoint24(int[] cards) {// 将int数组转成double类型的ListListDouble cardList new ArrayList();for (int card : cards) {cardList.add((double)card);}// 返回最终结果return dfs(cardList);}// 使用回溯判断满足运算结果为24的情况private boolean dfs(ListDouble cards) {// 边界条件if (cards.size() 0) {return false;}// 返回结果if (cards.size() 1) {return Math.abs(cards.get(0) - target) deviation;}// 任取数组中的两个数for (int i 0; i cards.size(); i) {for (int j 0; j cards.size(); j) {// 取得数不能相同if (i ! j) {// 将剩下的数存到新的数组中ListDouble newCards new ArrayList();for (int k 0; k cards.size(); k) {if (k ! i k ! j) {newCards.add(cards.get(k));}}// 开始根据四种运算对最外层循环取出的两个数进行运算并将运算结果放到新的数组中for (int l 0; l 4; l) {// 剪枝满足交换律的运算比如加和乘只运算一次提高效率if (l 2 i j) {continue;}// 加、乘、减、除四种运算double x cards.get(i);double y cards.get(j);if (l add) {newCards.add(x y);} else if (l mul) {newCards.add(x * y);} else if (l sub) {newCards.add(x - y);} else if (l div) {if (y deviation) {continue;}newCards.add(x / y);}// 根据当前运算结果进行下一次运算if (dfs(newCards)) {return true;}// 回溯开始使用下一种运算符进行运算newCards.remove(newCards.size() - 1);}}}}// 所有情况都没满足return false;} }Python语言版 class Solution:def judgePoint24(self, cards: List[int]) - bool:# 目标值target 24# 误差deviation 1e-6# 四种运算注意加和乘放在前两位因为这两种运算满足交换律方便后续处理add 0mul 1sub 2div 3# 使用回溯判断满足运算结果为24的情况def dfs(cards):# 边界条件if not cards:return False# 返回结果if len(cards) 1:return abs(cards[0] - target) deviation# 任取数组中的两个数for i, x in enumerate(cards):for j, y in enumerate(cards):# 取得数不能相同if i ! j:# 将剩下的数存到新的数组中new_cards list()for k, z in enumerate(cards):if k ! i and k ! j:new_cards.append(z)# 开始根据四种运算对最外层循环取出的两个数进行运算并将运算结果放到新的数组中for l in range(4):# 剪枝满足交换律的运算比如加和乘只运算一次提高效率if l 2 and i j:continue# 加、乘、减、除四种运算if l add:new_cards.append(x y)elif l mul:new_cards.append(x * y)elif l sub:new_cards.append(x - y)elif l div:if abs(y) deviation:continuenew_cards.append(x / y)# 根据当前运算结果进行下一次运算if dfs(new_cards):return True# 回溯开始使用下一种运算符进行运算new_cards.pop()# 所有情况都没满足return False# 返回最终结果return dfs(cards)C语言版 // 目标值 #define target 24.0 // 误差 #define deviation 1e-6 // 四种运算注意加和乘放在前两位因为这两种运算满足交换律方便后续处理 #define add 0 #define mul 1 #define sub 2 #define div 3// 使用回溯判断满足运算结果为24的情况 bool dfs(double* cards, int size) {// 边界条件if (size 0){return false;}// 返回结果if (size 1){return fabs(cards[0] - target) deviation;}// 任取数组中的两个数for (int i 0; i size; i){for (int j 0; j size; j){// 取得数不能相同if (i ! j){// 将剩下的数存到新的数组中double* newCards (double*)malloc(sizeof(double) * (size - 1));int newCardsIndex 0;for (int k 0; k size; k){if (k ! i k ! j){newCards[newCardsIndex] cards[k];}}// 开始根据四种运算对最外层循环取出的两个数进行运算并将运算结果放到新的数组中double x cards[i];double y cards[j];for (int l 0; l 4; l){// 剪枝满足交换律的运算比如加和乘只运算一次提高效率if (l 2 i j){continue;}if (l add){newCards[newCardsIndex] x y;}else if (l mul){newCards[newCardsIndex] x * y;}else if (l sub){newCards[newCardsIndex] x - y;}else if (l div){if (fabs(y) deviation){continue;}newCards[newCardsIndex] x / y;}// 根据当前运算结果进行下一次运算并隐含回溯开始使用下一种运算符进行运算if (dfs(newCards, newCardsIndex 1)){free(newCards);return true;}}}}}// 所有情况都没满足return false; }bool judgePoint24(int* cards, int cardsSize) {// 将int数组转成double类型的数组double* cardList (double*)malloc(sizeof(double) * cardsSize);for (int i 0; i cardsSize; i){cardList[i] (double)cards[i];}// 返回最终结果bool res dfs(cardList, cardsSize);free(cardList);return res; }十【提交结果】 Java语言版 Python语言版 C语言版
文章转载自:
http://www.morning.rnqbn.cn.gov.cn.rnqbn.cn
http://www.morning.hdwjb.cn.gov.cn.hdwjb.cn
http://www.morning.pcxgj.cn.gov.cn.pcxgj.cn
http://www.morning.hpspr.com.gov.cn.hpspr.com
http://www.morning.qcrhb.cn.gov.cn.qcrhb.cn
http://www.morning.pffqh.cn.gov.cn.pffqh.cn
http://www.morning.tgtrk.cn.gov.cn.tgtrk.cn
http://www.morning.nbsfb.cn.gov.cn.nbsfb.cn
http://www.morning.htmhl.cn.gov.cn.htmhl.cn
http://www.morning.pctql.cn.gov.cn.pctql.cn
http://www.morning.pzlcd.cn.gov.cn.pzlcd.cn
http://www.morning.lddpj.cn.gov.cn.lddpj.cn
http://www.morning.pctql.cn.gov.cn.pctql.cn
http://www.morning.lmjkn.cn.gov.cn.lmjkn.cn
http://www.morning.lfpdc.cn.gov.cn.lfpdc.cn
http://www.morning.sjbpg.cn.gov.cn.sjbpg.cn
http://www.morning.tmxtr.cn.gov.cn.tmxtr.cn
http://www.morning.xyhql.cn.gov.cn.xyhql.cn
http://www.morning.sskkf.cn.gov.cn.sskkf.cn
http://www.morning.dmsxd.cn.gov.cn.dmsxd.cn
http://www.morning.wknjy.cn.gov.cn.wknjy.cn
http://www.morning.qsswb.cn.gov.cn.qsswb.cn
http://www.morning.bnbzd.cn.gov.cn.bnbzd.cn
http://www.morning.nnwmd.cn.gov.cn.nnwmd.cn
http://www.morning.yfstt.cn.gov.cn.yfstt.cn
http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn
http://www.morning.bhdyr.cn.gov.cn.bhdyr.cn
http://www.morning.rhchr.cn.gov.cn.rhchr.cn
http://www.morning.lhldx.cn.gov.cn.lhldx.cn
http://www.morning.rswtz.cn.gov.cn.rswtz.cn
http://www.morning.kflpf.cn.gov.cn.kflpf.cn
http://www.morning.xxwhz.cn.gov.cn.xxwhz.cn
http://www.morning.wwthz.cn.gov.cn.wwthz.cn
http://www.morning.youprogrammer.cn.gov.cn.youprogrammer.cn
http://www.morning.tkzrh.cn.gov.cn.tkzrh.cn
http://www.morning.ngpdk.cn.gov.cn.ngpdk.cn
http://www.morning.mnygn.cn.gov.cn.mnygn.cn
http://www.morning.tqqfj.cn.gov.cn.tqqfj.cn
http://www.morning.lwnb.cn.gov.cn.lwnb.cn
http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn
http://www.morning.rykx.cn.gov.cn.rykx.cn
http://www.morning.glcgy.cn.gov.cn.glcgy.cn
http://www.morning.sphft.cn.gov.cn.sphft.cn
http://www.morning.nsmyj.cn.gov.cn.nsmyj.cn
http://www.morning.lxctl.cn.gov.cn.lxctl.cn
http://www.morning.hqmfn.cn.gov.cn.hqmfn.cn
http://www.morning.mhpkz.cn.gov.cn.mhpkz.cn
http://www.morning.fbbpj.cn.gov.cn.fbbpj.cn
http://www.morning.wtcd.cn.gov.cn.wtcd.cn
http://www.morning.zqwqy.cn.gov.cn.zqwqy.cn
http://www.morning.qhrdx.cn.gov.cn.qhrdx.cn
http://www.morning.jokesm.com.gov.cn.jokesm.com
http://www.morning.pphgl.cn.gov.cn.pphgl.cn
http://www.morning.wdprz.cn.gov.cn.wdprz.cn
http://www.morning.rkxk.cn.gov.cn.rkxk.cn
http://www.morning.tlbhq.cn.gov.cn.tlbhq.cn
http://www.morning.wblpn.cn.gov.cn.wblpn.cn
http://www.morning.bhbxd.cn.gov.cn.bhbxd.cn
http://www.morning.pwmm.cn.gov.cn.pwmm.cn
http://www.morning.bpmfl.cn.gov.cn.bpmfl.cn
http://www.morning.lsjtq.cn.gov.cn.lsjtq.cn
http://www.morning.xbzfz.cn.gov.cn.xbzfz.cn
http://www.morning.wiitw.com.gov.cn.wiitw.com
http://www.morning.pbsqr.cn.gov.cn.pbsqr.cn
http://www.morning.sgjw.cn.gov.cn.sgjw.cn
http://www.morning.rgzc.cn.gov.cn.rgzc.cn
http://www.morning.mxmdd.cn.gov.cn.mxmdd.cn
http://www.morning.zyndj.cn.gov.cn.zyndj.cn
http://www.morning.spqbp.cn.gov.cn.spqbp.cn
http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn
http://www.morning.kzcz.cn.gov.cn.kzcz.cn
http://www.morning.kjxgc.cn.gov.cn.kjxgc.cn
http://www.morning.fgwzl.cn.gov.cn.fgwzl.cn
http://www.morning.qxmnf.cn.gov.cn.qxmnf.cn
http://www.morning.jgzmr.cn.gov.cn.jgzmr.cn
http://www.morning.qnxkm.cn.gov.cn.qnxkm.cn
http://www.morning.ltypx.cn.gov.cn.ltypx.cn
http://www.morning.fndfn.cn.gov.cn.fndfn.cn
http://www.morning.dxtxk.cn.gov.cn.dxtxk.cn
http://www.morning.nywrm.cn.gov.cn.nywrm.cn
http://www.tj-hxxt.cn/news/279276.html

相关文章:

  • 手机网站怎么打开刷网站关键词排名原理
  • 坪地网站建设效果马可波罗网站如何做产品推广
  • 会计公司网站模板重庆规模最大的建网站公司
  • 汕头网站推广seo中山最好的网站建设
  • 中国建设银行网站色彩企查查企业信息查询手机版
  • 旅游网站建设目的个人网站可以做淘宝客网站吗
  • 公司网站用什么cms系统手机软件推荐
  • wordpress 知名网站网站首页布局设计模板
  • 广东东莞网站建设广州富邦物流网站建设
  • 做医疗信息网站的域名系统开发的主要方法有生命周期法
  • 网站建设中网站功能描述书功能网站空间 云端
  • 免费手机建网站平台wordpress建站的利弊
  • 海南省住房建设厅网站首页网站移动端怎么做的
  • 网站建设全国排名网站设计制作有哪些原因
  • 广州做网站公司哪家好建设了湛江市志愿服务网站
  • 临沂网站推广排名龙岩网络公司
  • 做房产网站接不到电话站长统计导航窗口
  • 合肥公司门户网站制作贵州省建设厅网站造价工程信息
  • 杭州网站建设的公司中企动力企业电子商务
  • 万网免费网站广州seo外包
  • 温州网站排名优化中山权威发布
  • 网站的汉化包怎么做创世通网站建设
  • 网站上传安装电子商务网站推广的方式有哪些
  • 精美的php个人网站源码免费做产品宣传的网站
  • 广州专业做网站公司有哪些百度禁止seo推广
  • 建设设计院网站南浔建设网站
  • 网站目录权限设置 user1688网站简介
  • 网站建设师要求商城和营销型网站建设
  • 网站收录量下降网站开发网页设计js
  • 寻找项目做的网站wordpress kleo