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

移动端企业网站百度秒收录

移动端企业网站,百度秒收录,工作室网页,长春企业网站排名优化背景: 通过一个游戏使用两个小数字 firstStep 和 secondStep 生成的一个数字。这个数字的一些数字(位数)丢失了! 他们仍然保留了一部分数字,叫做 puzzleNumber。这就像是一个拼图——有些数字还在,但其他一…

背景:
通过一个游戏使用两个小数字 firstStep 和 secondStep 生成的一个数字。这个数字的一些数字(位数)丢失了!
他们仍然保留了一部分数字,叫做 puzzleNumber。这就像是一个拼图——有些数字还在,但其他一些缺失了。任务是要找出在部分数字丢失之前,完整的数字可能是什么。
游戏规则如下:
从分数 0 开始。
你可以随意多次地将 firstStep 或 secondStep 加到分数上。
每次加完后,只记录分数的最后一位数字(这叫做单位数,例如 123 中的 3)。
持续记录这些数字,形成一个大数字。
现在想象你这样做得到了一个数字,但有人擦除了一些数字。你现在看到的是 puzzleNumber。
现在的任务是:找到最小的可能完整数字,使得 puzzleNumber 可以通过从这个完整数字中删除一些数字(即 puzzleNumber 是完整数字的子序列)而得到。如果游戏中没有任何数字可以做到这一点,则返回 “-1”。

方案:

    public static String solve(String puzzleNumber, int firstStep, int secondStep) {int inc = 1; // incrementif (firstStep == 5 && secondStep == 5) {for (int i = 0; i < puzzleNumber.length(); i++)if ((puzzleNumber.charAt(i) - '0') % 5 != 0)return "-1";} else if (firstStep % 2 == 0 && secondStep % 2 == 0) {for (int i = 0; i < puzzleNumber.length(); i++)if ((puzzleNumber.charAt(i) - '0') % 2 != 0)return "-1";inc = 2;}StringBuilder sb = new StringBuilder();if (firstStep == secondStep) {for (int i = 0, d = 0; i < puzzleNumber.length(); i++)do {d = (d + firstStep) % 10;sb.append(d);} while (d != puzzleNumber.charAt(i) - '0');}else {int[][] lookup = new int[10][10];for (int i = 0; i < 10; i += inc)for (int j = 0; j < 10; j += inc)lookup[i][j] = 10;for (int i = 0; i < 10; i += inc) {lookup[i][(i + firstStep) % 10] = (i + firstStep) % 10;lookup[i][(i + secondStep) % 10] = (i + secondStep) % 10;}boolean skipped = true;while (skipped) {skipped = false;int[][] backup = new int[10][];for (int i = 0; i < 10; i += inc)backup[i] = lookup[i].clone();for (int cur = 0; cur < 10; cur += inc)for (int next = 0; next < 10; next += inc)if (backup[cur][next] == 10) {int cur1 = (cur + firstStep) % 10;int cur2 = (cur + secondStep) % 10;if (backup[cur1][next] + backup[cur2][next] == 20)skipped = true;else if (backup[cur2][next] == 10)lookup[cur][next] = cur1;else if (backup[cur1][next] == 10)lookup[cur][next] = cur2;elselookup[cur][next] = Math.min(cur1, cur2);}}for (int i = 0, d = 0; i < puzzleNumber.length(); i++)do {d = lookup[d][puzzleNumber.charAt(i) - '0'];sb.append(d);} while (d != puzzleNumber.charAt(i) - '0');}return sb.toString();}
http://www.dtcms.com/wzjs/244249.html

相关文章:

  • 网站建设思企互联seo优化快排
  • 中国化工建设网站查权重网站
  • 厦门做网站哪家公司好搜索网站有哪几个
  • 办公室设计效果图大全优质的seo网站排名优化软件
  • 前端自己做博客网站seo视频教程
  • 做磁性材料在哪些网站推广比较好成都企业网站seo技术
  • 房地产公司网站开发谷歌seo需要做什么的
  • 住房建设建设部网站地推团队接单平台
  • 汕头免费做网站网站建设工作总结
  • 制作网页和做网站是一个意思吗全国十大教育机构
  • 做系统的网站好百度超级链
  • 开通公司网站怎么做分录最近新闻内容
  • wordpress插件和模板沈阳seo关键词排名优化软件
  • 做外汇网站代理公司网站与推广
  • 用h5做网站首页代码免费制作网页的网站
  • 长治软件制作平台网站seo公司哪家好
  • 企业年金退休后怎么发放seo优化是利用规则提高排名
  • 建立网站用英语线下实体店如何推广引流
  • 网站上的动态图怎么做的重庆关键词优化服务
  • 网站建设的未来站长统计网站大全
  • 产品网站怎么做的网站服务器
  • 优质的成都网站建设推上海网站seo诊断
  • 徐州苏视网站建设推广网站的方法有哪些
  • 做货代在哪些网站能找到客户上海百度公司总部
  • 房地产开发公司网站源码网址百度刷排名
  • 网站建设属于什么职位类别站长之家网站模板
  • 网站制作 网站建设 杭州网站发布与推广
  • 网站建设logoseo网站制作优化
  • 网站搭建服务器需要什么免费推广网站有哪些
  • 做网站最简单的工具免费二级域名注册申请