昨天做了几个题目。过于简单,就不在博客里面写了。

1314这道题也比較简单,写出来是由于我认为在这里有一个小技巧,对于时间复杂度和空间复杂度都比較节省。

这个题目类似哈希表的求解。可是更简单。刚拿到题目时,我想当然的希望将查询结果放到一个数组里面。然后遍历查询是否有一样的mod值。可是感觉这样肯定是最普遍的方法并且效率也不是太高。

后来想到了其它的一些查询算法,比方二分,可是都感觉不太合适。

直到我意识到这个过程和计算哈希表的过程类似,所以直接用mod值作为数组的下标索引。能够直接定位到当前值是否已经被计算过,从而高速推断是否一个好循环。

public class Main {public static void main(String argv[]) {int Step, Mod;java.util.Scanner scanner = new java.util.Scanner(System.in);while(scanner.hasNext()) {String strLine = scanner.nextLine();String strNums[] = strLine.split(" ");Step = Integer.parseInt(strNums[0]);Mod = Integer.parseInt(strNums[1]);int mods[] = new int[Mod];mods[0] = 0;int seed = 0;String strResult = "Good Choice";for(int i=1;i<Mod;i++) {seed = (seed + Step) % Mod;if(mods[seed] == 0 && seed != 0) {mods[seed] = seed;}else {strResult = "Bad Choice";break;}}System.out.format("%10s", Step);System.out.format("%10s", Mod);System.out.println("    "+strResult+"\n");}}
}

转载于:https://www.cnblogs.com/yfceshi/p/7209324.html

ZOJ ACM 1314(JAVA)相关推荐

  1. ACM中java的使用

    ACM中java的使用 转载自http://www.cnblogs.com/XBWer/archive/2012/06/24/2560532.html 这里指的java速成,只限于java语法,包括输 ...

  2. ACM中java的使用 (转)

    ACM中java的使用 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入:格式为:Scanner c ...

  3. ACM中java快速入门

    2019独角兽企业重金招聘Python工程师标准>>> ACM中java快速入门 附: Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特 ...

  4. acm java题_【转】ACM中java的使用

    ACM中java的使用 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入: 格式为:Scanner ...

  5. ACM中java的使用(各种比赛中)

    转载自点击打开链接 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入: 格式为:Scanner ci ...

  6. acm java_ACM Java Native SDK 概述

    示例代码 添加依赖后,即可在程序中使用 ACM Java Native SDK 提供的接口. 说明 请将代码中的 $regionId.$endpoint.$namespace.$accessKey.$ ...

  7. java起源英文_Abbreviation 英文词组缩写(来源:南阳理工大学ACM)java

    As we know, we often use a short sequence of characters in place of some words with a very long name ...

  8. ACM中Java使用总结

    Java在ACM中的主要应用是大数类[个人见解].做个小总结,留作模板用. 类名默认为Main. 输入: 声明一个输入对象cin;Scanner cin=new Scanner(System.in); ...

  9. acm用java怎么写_用java来写ACM

    前言 从去年10月份开始就一直都在九度oj平台写acm,到今天在九度oj的总排名已经到了第6名,收获很多特别是算法和数据结构方面的提高,这种提高直接反映在我找工作的顺利中 但是人总要学会拥抱变化,特别 ...

  10. acm竞赛java很少,Java多线程在ACM竞赛中的应用

    欢迎转载,转载请注明出处. 转发注记:网上看到有少数人讨论过在ACM竞赛中使用多线程,但是在Online Judge上一般是不支持的.因为Online Judge都会限制CPU的使用权限,所以即使可以 ...

最新文章

  1. HTML全局属性data-
  2. android卡点视频教程,剪映怎么制作卡点视频 制作方法介绍
  3. Spring Security之短信登录
  4. MongoDB基本概念学习 - 集合
  5. 用JavaScript玩转计算机图形学(一)光线追踪入门
  6. 事故通报绝不能一报了事22344
  7. 浏览器登陆时纪录自动登陆时限
  8. aliyun 阿里云Maven仓库地址 不管是自建私服还是maven构建 必备 结束了几kb的历史
  9. 面试问题汇总 精选 分析 解答 职业规划 part 2
  10. 解决:No goals have been specified for this build. You must specify a valid lifecycle phase or a goal i
  11. 如何锻炼膝盖和膝盖周围肌肉_我的分享膝盖照片的社交网络将如何拯救世界
  12. 怎样制作网吧服务器,网吧游戏服务器制作的过程是怎样的
  13. xtrabackup启动过程中出现的报错
  14. 横向对比EXT4,带你感受真实的Linux文件系统F2FS
  15. 初识阿里云环境搭建:无法远程连接,入过的坑:服务器ping不通,FTP搭建,服务器搭建数据库,远程连接服务器数据库
  16. P3554 [POI2013]LUK-Triumphal arch
  17. vue-quill-editor 富文本 自定义图片上传操作
  18. ABAP术语-BOR (Business Object Repository )
  19. sql查询重复订单号
  20. 雷顿学院《百万大咖》校园行

热门文章

  1. checkbox选中并记住状态(分页)
  2. centos7按报错dracut
  3. 重做系统,出现invalid switch noid
  4. php $_SERVER详细参数解析
  5. 大一c语言期末大作业,大一期末C语言大作业—结构体和链表框架
  6. 使用javaGUI编写检测是否有网
  7. linux jdk环境变量配置不生效_Linux服务器JDK环境变量配置
  8. jQuery操作动画队列
  9. 记录一个手写场景的过程
  10. [渝粤教育] 盐城工学院 大学物理(力学、振动与波动) 参考 资料