51Nod - 1035 最长的循环节

正整数k的倒数1/k,写为10进制的小数如果为无限循环小数,则存在一个循环节,求<=n的数中,倒数循环节长度最长的那个数,假如存在多个最优的答案,输出所有答案中最大的那个数。

1/6= 0.1(6) 循环节长度为1
1/7= 0.(142857) 循环节长度为6
1/9= 0.(1)  循环节长度为1

Input
输入n(10 <= n <= 1000)
Output
输出<=n的数中倒数循环节长度最长的那个数
Input示例
10
Output示例
7

题解:

    使用直接方法。用 map 来辅助计算循环节。

#include <iostream>
#include <map>
using namespace std;
const int MAXN = 1000 + 5; int cnt[MAXN]; int Find(int n){int num = 1, idx = 1, ans;  map<int, int> mp; while(1){if(num == 0){return 0; }while(num < n){num = num * 10; }if(mp.find(num) == mp.end()){mp[ num ] = idx; idx++; }else{ans = idx - mp[ num ]; break; }num = num % n;}return ans;
}void init(){for(int i=2; i<=1000; ++i){cnt[i] = Find(i); }
}int main(){int n, ans, ans_tmp; init(); while(scanf("%d", &n) != EOF){ans = 0, ans_tmp = 0; for(int i=1; i<=n; ++i){if(ans_tmp < cnt[i]){ans_tmp = cnt[i]; ans = i;  }}printf("%d\n", ans ); }return 0;
}

  

转载于:https://www.cnblogs.com/zhang-yd/p/6818686.html

51Nod - 1035 最长的循环节相关推荐

  1. 字符串——OKR-Periods of Words(kmp求最短相同前后缀或者说求最长循环节)

    传送门:OKR-Periods of Words 思路:题目要求的是最大的前缀Q使得A是QQ的前缀,同时Q不能等于A, 比如在bababab,要使得周期最大,应该选的循环节就是bababa, 另一个有 ...

  2. 51nod 1126 求递推序列的第N项 思路:递推模拟,求循环节。详细注释

    题目: 看起来比较难,范围10^9 O(n)都过不了,但是仅仅是看起来.(虽然我WA了7次 TLE了3次,被自己蠢哭) 我们观察到 0 <= f[i] <= 6 就简单了,就像小学初中学的 ...

  3. Fib数模n的循环节

    我们知道Fibonacci数列,现在我们来求一个Fib数模n的循环节的长度. 对于一个正整数n,我们求Fib数模n的循环节的长度的方法如下: (1)把n素因子分解,即 (2)分别计算Fib数模每个的循 ...

  4. LeetCode 466. 统计重复个数(循环节)

    1. 题目 由 n 个连接的字符串 s 组成字符串 S,记作 S = [s,n].例如,["abc",3]="abcabcabc". 如果我们可以从 s2 中删 ...

  5. 2019 CCPC秦皇岛 J 题 MUV LUV EXTRA【KMP 求最小循环节】

    题意: 原题意是给出一个有理数的前一部分,求这个有理数的无限循环部分是什么.有一个值来评估猜的准确度.转换一下就成了下面的题意: 给出一个字符串s,有某一个子串,设p为该子串在s的某个后缀中的匹配长度 ...

  6. Problem A. MUV LUV EXTRA(kmp求最小循环节)

    LINK 最小化 a ∗ p − b ∗ l a*p-b*l a∗p−b∗l 其中 p p p表示循环节总长, l l l表示循环节长度 若循环节从 i i i位置开始,那么一定需要延续到末尾 考虑固 ...

  7. 2018年东北农业大学春季校赛 K wyh的数列【数论/斐波那契数列大数取模/循环节】...

    链接:https://www.nowcoder.com/acm/contest/93/K 来源:牛客网 题目描述 wyh学长特别喜欢斐波那契数列,F(0)=0,F(1)=1,F(n)=F(n-1)+F ...

  8. hdu 3374 String Problem (字符串最小最大表示 + KMP求循环节)

    Problem - 3374 KMP求循环节. http://www.cnblogs.com/wuyiqi/archive/2012/01/06/2314078.html 循环节推导的证明相当的好,这 ...

  9. 输出1/n(是循环小数的,只输出第一个循环节)

    Input 第一行整数T,表示测试组数.后面T行,每行一个整数 n (1<=|n|<=10^5). Output 输出1/n. (是循环小数的,只输出第一个循环节). Sample Inp ...

最新文章

  1. 果园机器人的课文_小学三年级下《果园机器人》课文
  2. 数据结构——线性表:顺序表、单向链表、循环链表、双向链表
  3. Java不要放弃之路
  4. Oracle如何手工执行job,求助高手,JOB执行和手工执行执行结果不同,JOB执行不出来,手工却没问题...
  5. 后台命名查询sql查某几个字段传到前台
  6. php 显示下拉菜单,PHP在下拉列表中显示菜单树
  7. php 不解析,php不解析html代码
  8. python-简单邮件报警
  9. 安装opencv_contrib(ubuntu16.0)
  10. div+css总结—FF下div不设置…
  11. stm32g474芯片手册_STM32芯片资料-STM32F4 选型手册.pdf
  12. 旧计算机 云桌面,切换桌面(云桌面切换到自己电脑)
  13. 苏州外壳防护试验IP防尘防水测试IP65 IP66 IP69K
  14. 关于笔记本测试的面试准备 2021-10-11
  15. 函数型计算机有储存功能吗,无存储功能的计算器指的是什么
  16. helm和operator
  17. 【Spring】注解驱动开发
  18. LA4043 KM算法
  19. 电脑蓝牙无法搜索到其它蓝牙设备
  20. win7计算机组策略打不开,Win7系统组策略打不开怎么办?组策略被锁住了怎么处理?...

热门文章

  1. js 中对象--属性相关操作
  2. 数据列表DataList模板之实例
  3. Java多线程编程总结
  4. 最大公因数、最小公倍数、因式分解
  5. golang中的strings.SplitAfter
  6. golang值为nil的channel
  7. MySQL第7天:MySQL的架构介绍之存储引擎
  8. python二十三:生产者 消费者模型
  9. Memcached实战之复制----基于repcached的主从
  10. thinkphp-比较标签-eq