hdu 1014
我:题都看不懂
路人甲:这是随机数分配题目
路人乙:这是求生成元,求mod
N的生成元,即生成元与N互质
路人丙:这是根据给出的递推公式算一下
0~ mod-1之间的数是否都有出现过,如果都出现了,那就是Good 否则bad
路人丁:这是求step和mod如果GCD(最大公约数位1)那么就是Good Choice,否则为Bad Choice
路人甲、路人丙:
#include <iostream>
using namespace std;
const long int MAX_MOD = 100000;
bool gened[MAX_MOD] = {false};//数是否产生
void doRandomTest(int step,int mod)
{
int seed = 0,tmp,i;//初始种子值为零
for(i=0;i<mod;++i)
{//刚开始数都未产生
gened[i] = false;
}
gened[0] = true;//第一个产生的是零
do
{
tmp = (seed+step)%mod;
gened[tmp] = true;//第tmp个数已经产生了
seed = tmp;//更新种子数
}while(seed!=0);
for(i=0;i<mod;++i)
{
if(gened[i]==false)//有数没有产生出来
break;
}
if(i==mod)
{
printf("%10d%10d Good Choice\n",step,mod);
}
else
printf("%10d%10d Bad Choice\n",step,mod);
cout<<endl;
}
int main(int argc,char* argv[])
{
int step,mod,i;
while(cin>>step>>mod)
{
doRandomTest(step,mod);
}
return 0;
}
路人乙、路人丁:
#include<bits/stdc++.h>
using namespace std;
int main() {
int n,m;
while(cin>>n>>m) {
if(__gcd(n,m)==1)
printf("%10d%10d Good Choice\n\n",n,m);
else
printf("%10d%10d Bad Choice\n\n",n,m);
}
return 0;
}

hdu 1014的更多相关文章
- hdu 1014.Uniform Generator 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014 题目意思:给出 STEP 和 MOD,然后根据这个公式:seed(x+1) = [seed(x) ...
- HDU 1014 Uniform Generator 欧几里得
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014 解题思路: 1. 把题目意思读懂后,明白会输入两个数,然后根据题中的公式产生一系列伪随机数,看这 ...
- 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(模拟和公式)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1014 Uniform Generator Time Limit: 2000/1000 MS (Java ...
- HDU 1014:Uniform Generator
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- HDU 1014(互质数 **)
题意是说从 0 开始每次增加 STEP,然后模 MOD 得到一些数,问是否能得到从 0 到 MOD - 1 的所有数. 只要 STEP 与 MOD 互质就可以满足条件,也就是二者的最大公因数为 1 即 ...
- HDU 1014 Uniform Generator(题解)
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- HDU 1014 G题
Uniform Generator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) T ...
- hdu 1014 Uniform Generator 数论
摘取于http://blog.csdn.net/kenden23/article/details/37519883: 找到规律之后本题就是水题了,不过找规律也不太容易的,证明这个规律成立更加不容易. ...
随机推荐
- java多线程实例
import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; import java.util.concurr ...
- Java可重入锁与不可重入锁
可重入锁,指的是以线程为单位,当一个线程获取对象锁之后,这个线程可以再次获取本对象上的锁,而其他的线程是不可以的. synchronized 和 ReentrantLock 都是可重入锁. 可重入 ...
- ldd3 源码相关问题参见
参考地址: http://www.verydemo.com/demo_c92_i235635.html http://blog.csdn.net/silvervi/article/details/64 ...
- function方法控制是否隐藏部分内容
$(document).ready(function() { $('input[type=radio][name=IE]').change(function() { if (this.value == ...
- Windows XP with SP3大客户免激活日文版
原贴地址:http://www.humin.com.cn/ja_windows_xp_professional_with_service_pack_3_x86_dvd_vl_x14-74058-iso ...
- dfs小练 【dfs】
1.前n个自然数的所有排列: #include <iostream> #include <cstdio> #include <cstring> using name ...
- ios 打tag
修改spec文件的version: git commit -am"version 0.1.1" git push origin master -u git tag 0.1.1 gi ...
- python的多线程和守护线程
1.创建一个多线程 import threading import time ''' def threading_func(num): print("running on number:%s ...
- 解读超轻量级DI容器-Guice与Spring框架的区别【转载】
依赖注入,DI(Dependency Injection),它的作用自然不必多说,提及DI容器,例如spring,picoContainer,EJB容器等等,近日,google诞生了更轻巧的DI容器… ...
- 硬盘的 read0 read 1
Read 0:组建的时候必须2块容量相同的硬盘,每个程序的数据以一定的大小分别写在两个硬盘里,读的时候从两个硬盘里一起读,这种阵列方式理论上硬盘的读写速度是一块硬盘的2倍,实际应用中大约速度比一块硬盘 ...