Codeforces 1855B:Longest Divisors Interval 最长的连续约数区间
1855B.Longest Divisors Interval
Description:
- 对于一个整数 \(n\) \((1\leq n \leq 10^{18})\),找到一段最长的区间\([l,r]\),使得区间内所有数均为 \(n\) 的约数。
Analysis:
- 如果 \(n\)是一个奇数(非 \(2\)的倍数),由于 \(odd = odd \times odd\),则不可能有连续的两个整数均为 \(n\) 的约数;
- 推广:连续3个整数中必有一个是3的倍数,连续x个整数中必有x的倍数
- 若区间 \([l,r]\) 成立,则区间 \([1,r-l+1]\) 也成立(可以通过取模运算转化),故只需从1开始找到第一个(最小的)\(x\) (\(x\)不是\(n\)的约数),则 \(ans = x-1\)
- (补充)关于枚举边界的确定:由唯一分解定理 \(n=p_1^{\alpha_1}p_2^{\alpha_2}···p_k^{\alpha_k}\),可对 \(1e18\) 粗略考虑,已知在 \(\alpha_1=\alpha_2=···=\alpha_k=1\) 的条件下,连续质数相乘:\(p_k=47\)时,\(n\approx6e17\);\(p_k=53,n\approx1e19\)。故在\(\alpha\geq1\)时,\(53\) 即为可行的枚举边界。
// 边界验证
init(); //初始化素数筛
ull res = 1;
for(int i=1;i<=53;i++) {
if(prime[i]) {
res *= i;
cout << "素数:" << i << " " << "res: " << res << endl;
}
}
素数:2 res: 2
素数:3 res: 6
素数:5 res: 30
素数:7 res: 210
素数:11 res: 2310
素数:13 res: 30030
素数:17 res: 510510
素数:19 res: 9699690
素数:23 res: 223092870
素数:29 res: 6469693230
素数:31 res: 200560490130
素数:37 res: 7420738134810
素数:41 res: 304250263527210
素数:43 res: 13082761331670030
素数:47 res: 614889782588491410
素数:53 res: 14142414403480493114
Solution:
void solve() {
ll n; cin >> n;
for(int i=1;i<=55;i++) {
if(n % i != 0) {
cout << i-1 << endl;
return ;
}
}
}
Codeforces 1855B:Longest Divisors Interval 最长的连续约数区间的更多相关文章
- 【leetcode】1124. Longest Well-Performing Interval
题目如下: We are given hours, a list of the number of hours worked per day for a given employee. A day i ...
- poj 2533 Longest Ordered Subsequence 最长递增子序列
作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4098562.html 题目链接:poj 2533 Longest Ordered Subse ...
- [LeetCode] Longest Line of Consecutive One in Matrix 矩阵中最长的连续1
Given a 01 matrix M, find the longest line of consecutive one in the matrix. The line could be horiz ...
- leecode 978. Longest Turbulent Subarray(最长连续波动序列,DP or 滚动数组)
传送门:点我 978. Longest Turbulent Subarray A subarray A[i], A[i+1], ..., A[j] of A is said to be turbule ...
- leetcode300. Longest Increasing Subsequence 最长递增子序列 、674. Longest Continuous Increasing Subsequence
Longest Increasing Subsequence 最长递增子序列 子序列不是数组中连续的数. dp表达的意思是以i结尾的最长子序列,而不是前i个数字的最长子序列. 初始化是dp所有的都为1 ...
- [Leetcode] Longest consecutive sequence 最长连续序列
Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...
- lintcode 77.Longest Common Subsequence(最长公共子序列)、79. Longest Common Substring(最长公共子串)
Longest Common Subsequence最长公共子序列: 每个dp位置表示的是第i.j个字母的最长公共子序列 class Solution { public: int findLength ...
- Leetcode 5. Longest Palindromic Substring(最长回文子串, Manacher算法)
Leetcode 5. Longest Palindromic Substring(最长回文子串, Manacher算法) Given a string s, find the longest pal ...
- [LeetCode] 516. Longest Palindromic Subsequence 最长回文子序列
Given a string s, find the longest palindromic subsequence's length in s. You may assume that the ma ...
- 76.Longest Consecutive Sequence(最长的连续序列)
Level: Hard 题目描述: Given an unsorted array of integers, find the length of the longest consecutive ...
随机推荐
- [ZJOI2020] 序列 线性规划做法/贪心做法
线性规划做法 同时也作为线性规划对偶的一个小小的学习笔记. 以下 \(\cdot\) 表示点积,\(b,c,x,y\) 是行向量. \(A\) 是矩阵,对于向量 \(u,v\) 若 \(\forall ...
- vue页面中展示markdown以及katex公式
场景 数据库中有markdown语法的字符串,需要展示为正常的页面,难点在于其中的katex数学公式 解决方式 使用showdown及其族系插件 npm i showdown npm i showdo ...
- Java的抽象类 & 接口
抽象类 如果自下而上在类的继承层次结构中上移,位于上层的类更具有通用性,甚至可能更加抽象.从某种角度看,祖先类更加通用,人们只将它作为派生其他类的基类,而不作为想使用的特定的实例类.例如,考虑一下对 ...
- Linux 升级sudo到 1.9.12p1,解决漏洞CVE-2022-43995
一.查看sudo版本 sudo -V 二.下载最新版本到服务器并解压 wget https://www.sudo.ws/dist/sudo-1.9.12p1.tar.gz && tar ...
- Python批量下载鼠标样式,自动化一条龙处理详解
目录 前情提要 爬虫环境 抓包分析请求 编写代码: 展示效果 结束语 前情提要 最近发现一款特别好看的壁纸软件,其中提供了鼠标样式,感觉很好看!很精致!心想肯定是请求下载然后启用鼠标样式, 那么发送请 ...
- Python基础 - 逻辑运算符
Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20: 运算符 逻辑表达式 描述 实例 and x and y 布尔"与" - 如果 x 为 False,x a ...
- C# EFCore 根据Oracle/SqlServer数据库表生成实体类和DbContext
官方文档: https://docs.microsoft.com/zh-cn/ef/core/managing-schemas/scaffolding?tabs=dotnet-core-cli 本文以 ...
- 【Haxe】(二)字符串与变量的输入输出
前言 每次学习一门新语言,各种手册和教程一上来就是讲变量如何定义,数据结构怎么用,很少有讲输入输出应该怎么写的.我比较喜欢先搞懂这部分,这让我感觉像是掌握了学习主动权,很能调动我的学习积极性.于是我的 ...
- OSI7层模型和TCP/IP模型
前言 在计算机网络领域中,OSI7层模型和TCP/IP模型是两个重要的概念.本文将对这两个模型进行介绍和比较,让大家了解它们的区别和联系. 目录 前言 OSI7层模型 TCP/IP模型 OSI7层模型 ...
- R 语言主成分分析(PCA)实战教程
作者:落痕的寒假原文:https://blog.csdn.net/LuohenYJ/article/details/97950522 声明:本文章经原作者同意后授权转载. 主成分分析 Principa ...