HDU 1014 Uniform Generator 欧几里得
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014
解题思路:
1. 把题目意思读懂后,明白会输入两个数,然后根据题中的公式产生一系列伪随机数,看这些数是不是能够包含0~MOD-1。如果产生不了就输出“Good Choice”,否则输出“Bad Choice”。
2. 全部假使x从0开始,设STEP为a,MOD为b。如果说a,b存在倍数关系,即假设最小存在2倍关系,那么就会有b=2a。x初始为0,第一步之后为a,第二步之后为0,之后a、0交替出现。周期为2,那么始终都不会产生0~b-1的全部数。以此类推,只要存在几倍关系,周期就为几。可见,两数存在倍数关系就不会得到全部数列。则2a与3a也不会有结果。所以说,当两数存在公约数,即两数不互质,就不会产生一系列数。
3. 如果两数互质,举一个最简单的例子。令a=b+1。则x初始为0,第一步之后为1,第二步之后为2,第三步之后为3,则可以产生一系列伪随机数满足题中要求。
4. 编写代码时注意最后输出,C++输出默认右对齐。
源代码:
#include<stdio.h>
int main()
{
int t,n,m,a,b;
while(scanf("%d%d",&m,&n)!=EOF)
{
a=m;
b=n;
if(m<n)
{
t=m;
m=n;
n=t;
}
if(n==)
{
n=m;
}
else
{
while(m%n!=)
{
t=m%n;
m=n;
n=t;
}
}
if(t==)
printf("%10d%10d Good Choice\n\n",a,b);
else
printf("%10d%10d Bad Choice\n\n",a,b); }
return ;
}
HDU 1014 Uniform Generator 欧几里得的更多相关文章
- HDU 1014 Uniform Generator(模拟和公式)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1014 Uniform Generator Time Limit: 2000/1000 MS (Java ...
- HDU 1014 Uniform Generator【GCD,水】
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- HDU 1014:Uniform Generator
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- HDU 1014 Uniform Generator(题解)
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- hdu 1014.Uniform Generator 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014 题目意思:给出 STEP 和 MOD,然后根据这个公式:seed(x+1) = [seed(x) ...
- HDU 1014 Uniform Generator 题解
找到规律之后本题就是水题了.只是找规律也不太easy的.证明这个规律成立更加不easy. 本题就是求step和mod假设GCD(最大公约数位1)那么就是Good Choice,否则为Bad Choic ...
- hdu 1014 Uniform Generator 数论
摘取于http://blog.csdn.net/kenden23/article/details/37519883: 找到规律之后本题就是水题了,不过找规律也不太容易的,证明这个规律成立更加不容易. ...
- HDU 1014 Uniform Generator(最大公约数,周期循环)
#include<iostream> #include <cstdio> #include <cstring> using namespace std; int m ...
- hdu 5512 Pagodas 扩展欧几里得推导+GCD
题目链接 题意:开始有a,b两点,之后可以按照a-b,a+b的方法生成[1,n]中没有的点,Yuwgna 为先手, Iaka后手.最后不能再生成点的一方输: (1 <= n <= 2000 ...
随机推荐
- MongoDB增删改查操作详解
一.插入 MongoDB的插入操作很简单,使用insert方法,这里演示从创建数据库.创建集合到插入文档.查询文档. 集合创建方法参数说明: size:集合最大空间 max:集合最多文档数量 (超出s ...
- PHP设计模式三:原型设计模式
一.什么是原型设计模式 原型设计模式使用一种克隆技术来复制实例化的对象,新对象是通过复制原型实例创建的.原型设计模式的目的是通过使用克隆以减少 实例化对象的开销. 在原型设计模式中,Client类是不 ...
- python的小基础
变量python中的变量为指向常量的地址当常量没有指向时,系统自动回收内存空间如A = 1B = AA = 2print(A,B)#2,1id(A),id(B)id()为python虚拟机的虚拟地址, ...
- 楼梯T-SQL:超越基础6级:使用CASE表达式和IIF函数
从他的楼梯到T-SQL DML,Gregory Larsen涵盖了更多的高级方面的T-SQL语言,如子查询. 有时您需要编写一个可以根据另一个表达式的评估返回不同的TSQL表达式的单个TSQL语句. ...
- .Net Core在Ubuntu上操作MySql折腾实录
.Net Core 2.0 发布也这么久了,一直想着折腾着玩玩,无奈一直没时间,这几天准备开始好好学习下C#在跨平台方面的应用,记录下来以备自己以后回忆.学习. 本篇博客的主要内容: MySql在Ub ...
- Javascript下IE与Firefox下的差异兼容写法总结
http://www.jb51.net/article/23923.htm 总结一部分IE和Firefox的javascript差异写法,对于像书写多浏览器兼容性更好的代码,可以参考下. ...
- struts2 中文乱码问题,自定义过滤器通用解决方法
问题描述 在JSP中使用form表单向后台action中传递中文参数,后台action接收到参数出现中文乱码.JSP页面统一采用了utf-8编码格式.由于struts2默认采用的编码为utf-8,根据 ...
- wx:for修改样式
在获取文字识别数据之后,对数据进行wx:for循环加了边框如图效果: 需求:点击不同边框获取不同文字,再次点击取消选中:选中背景为#999: <view wx:for="{{img_d ...
- airodump-ng使用手册
选项: -i, --ivs 捕捉WEP加密的包,忽略出IV之外的所有的包,保存为.ivs格式 airodump-ng wls35u1 -i -w captures airodump-ng wls35u ...
- pgjdbc源码分析
一. 源代码目录结构 pgjdbc的源码结构如下图: 那么我们来一一看看各个模块都是做什么的吧. 1 core 该目录是程序的核心模块目录. 这里实现了大部分pgjdbc的基类和接口,例如statem ...