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

仪器网站模版googlechrome浏览器

仪器网站模版,googlechrome浏览器,网站程序开发,哪些网站是用织梦做的背景: 通过一个游戏使用两个小数字 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/205549.html

相关文章:

  • 前端用什么框架做网站seo网页优化培训
  • 域名备案网站名称河南seo
  • 做网站的外包公司有哪些优化关键词排名公司
  • 网站建设开票项目选什么注册域名
  • 如何用另一个端口做网站七牛云
  • 做简历的网站有哪些宁波百度seo点击软件
  • 临沂做网站公司百度搜索数据查询
  • 网站数据库连接错误百度竞价排名广告定价
  • 集团网站建设方案书自己怎么做百度推广
  • 网站建设从建立服务器开始太原seo排名公司
  • 单页面组合网站福州seo经理招聘
  • 门户网站的基本功能巩义网站推广优化
  • 东莞++网站建设企业品牌类网站有哪些
  • 网站建设书籍昆明seo技术培训
  • 学平面设计的网站少儿培训
  • 什么行业适合做网站推广成都比较靠谱的seo
  • wordpress政府主题潍坊seo教程
  • labview可以做网站吗做公司网站需要多少钱
  • 编辑目录中的字体 wordpressseo搜索引擎优化工资薪酬
  • 网站解析后怎么解决方法怎么制作网站?
  • 网站建设和的注意事项高端seo服务
  • 网站设计与管理方向网络营销的方式和方法
  • 做公司的网站的需求有哪些内容广告seo是什么意思
  • 苏州网站关键词推广网站免费搭建平台
  • 做品牌形象网站网站seo专员招聘
  • 微信制作网站开发口碑营销策略有哪些
  • 深圳宝安做网站seo官网优化详细方法
  • 创业做网站开发查排名
  • 做挂件像网站软文营销是什么意思
  • 网站次页seo关键词