//    hdu5317 RGCDQ
//
// 题目大意:
//
// 给定一个闭区间[l,r],定义f(x)是x的不同的质因子的个数
// 比方: 12 = 2 * 2 * 3,是两种。所以f(x) = 2,问max GCD(f[i],f[j])
// i,j在[l,r]范围内,而且i!=j.
//
// 解题思路:
//
// 首先伟大的W神发现了一个规律。就是小于等于1e6不同的素因子个数不会超过7个
// 这样。我们就行统计出在1到i这个区间内,1-7各出现了多少次。最后R-(L-1)>=2
// 说明出现了两次以上,那么最大公约数就是此时的i啦。统计一下,然后O(1)求值。
//
// 感悟:
//
// 这道题,開始想复杂了,还和大神们一起讨论线段树怎么做。然后发现当时过的队伍好多,
// 就再没往这方面想,还是J大神最后秒了这题。确实挺巧妙的。当时的我就在卖萌。哎,
// 自己不会的千千万。不,应该说我就不会什么。继续加油吧!fighting!
//
// 非常奇怪的一点是在进行埃式筛法的时候開始将isp置为0或者置为1,所花费的时间天差地别,
// 后者TLE了n发。改过来之后1100多ms过了,这里实在想不通,假设有大神可以解答我的疑惑
// 小子定当不胜感激 #include <stdio.h>
#include <string.h>
#include <algorithm>
#include <iostream>
#include <vector>
#define For(i,x,y) for (int i = (x) ;i < (y) ;i ++)
using namespace std; const int MAX_N = 1000006;
int f[MAX_N];
bool isp[MAX_N];
int p[MAX_N];
int sum[MAX_N][10];
int l,r;
int cnt;
inline void init(){
cnt = 0;
memset(isp,0,sizeof(isp));
isp[0] = isp[1] = 0; for (int i=2;i<=MAX_N;i++){
if (!isp[i]){
p[cnt++] = i;
for (long long j = (long long) i * i;j < MAX_N;j+=i){
isp[j] = 1;
}
}
}
f[1] = 0;
for (int i=2;i< MAX_N;i++){
int x = i;
f[i] = 0;
for (int j=0;j<cnt && isp[x]==1;j++){
if (x%p[j]==0){
f[i]++;
while(x%p[j]==0){
x/=p[j];
}
}
}
if (x>1)
f[i]++;
} for (int i=1;i<8;i++)
sum[1][i] = 0; for (int i=2;i<=MAX_N;i++){
for (int j=1;j<8;j++)
sum[i][j] = sum[i-1][j];
for (int j=1;j<8;j++){
if (f[i]%j==0){
sum[i][j]++;
}
}
}
} inline void solve(){
scanf("%d%d",&l,&r);
int mx = 0;
for (int i=8;i>=1;i--){
if (sum[r][i] - sum[l-1][i] >= 2){
mx = i;
break;
}
}
printf("%d\n",mx); } int main(){
int t;
init();
//freopen("1.txt","r",stdin);
scanf("%d",&t);
while(t--){ solve();
}
}

hdu5317 RGCDQ 统计的更多相关文章

  1. 解题报告 之 HDU5317 RGCDQ

    解题报告 之 HDU5317 RGCDQ Description Mr. Hdu is interested in Greatest Common Divisor (GCD). He wants to ...

  2. hdu5317 RGCDQ (质因子种数+预处理)

    RGCDQ 题意:F(x)表示x的质因子的种数.给区间[L,R],求max(GCD(F(i),F(j)) (L≤i<j≤R).(2<=L < R<=1000000) 题解:可以 ...

  3. HDU-5317 RGCDQ ,暴力打表!

    RGCDQ 暴力水题,很可惜比赛时没有做出来,理清思路是很简单的. 题意:定义f(i)表示i的素因子个数,给你一段区间[l,r],求max_gcd(f(i),f(j)).具体细节参考题目. 思路:数据 ...

  4. hdu5317 RGCDQ

    Problem Description Mr. Hdu is interested in Greatest Common Divisor (GCD). He wants to find more an ...

  5. 2015 HDU 多校联赛 5317 RGCDQ 筛法求解

    2015 HDU 多校联赛 5317 RGCDQ 筛法求解 题目  http://acm.hdu.edu.cn/showproblem.php? pid=5317 本题的数据量非常大,測试样例多.数据 ...

  6. HDU-5317

    RGCDQ Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  7. spark处理大规模语料库统计词汇

    最近迷上了spark,写一个专门处理语料库生成词库的项目拿来练练手, github地址:https://github.com/LiuRoy/spark_splitter.代码实现参考wordmaker ...

  8. TFS 测试用例步骤数据统计

    TFS系统集成了一套BI系统,基于SQL Server的Analysis Service进行实现的.通过这几年的深入使用,能够感触到这个数据数据仓库模型是多么的优秀,和微软官方提供的数据仓库示例Adv ...

  9. java统计字符串单词的个数

    在一些项目中可能需要对一段字符串中的单词进行统计,我在这里写了一个简单的demo,有需要的同学可以拿去看一下. 本人没怎么写个播客,如果有啥说的不对的地方,你来打我啊 不说废话了直接贴代码: 实现代码 ...

随机推荐

  1. APUE 学习笔记(九) 高级I/O

    1. 非阻塞I/O 低速系统调用时可能会使进程永远阻塞的一类系统调用,包括以下调用: (1)某些文件类型你(网络socket套接字.终端设备.管道)暂无可使用数据,则读操作可能会使调用者永远阻塞 (2 ...

  2. C语言扩展题

    1.使用cmake来创建c语言工程 2.使用gcc来编译源代码 3.下载redis,并且编译运行redis(注:redis目前是c语言编写的,而且是主要是linux平台,在windows平台编译比较麻 ...

  3. 【CF387D】George and Interesting Graph(二分图最大匹配)

    题意:给定一张n点m边没有重边的有向图,定义一个有趣图为:存在一个中心点满足以下性质: 1.除了这个中心点之外其他的点都要满足存在两个出度和两个入度. 2.中心 u 需要对任意顶点 v(包括自己)有一 ...

  4. 标准C程序设计七---56

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  5. LaTeX 如何在文档的侧面插入图片实现"绕排"?

    https://www.zhihu.com/question/26837705 https://blog.csdn.net/u012856866/article/details/70305834

  6. [原创][SW]一些实用软件的小tips(长期更新)

    0. 简介 生活中我们经常使用许多的小工具或软件,来提高我们的工作效率,比如UltraEdit.Notepad++等.本文主要做一些记录,目的呢就是防止自己遗忘或者是快速的查询,来源是自己的摸索和网络 ...

  7. 浅谈APP的分享功能,有时候社交裂变形式比内容更“重要”

    回顾2018年的移动互联网,“社交裂变”“下沉”等成为年度关键词.一方面我们可以看到社交裂变助推用户增长,另一方面我们也看到了以拼多多.趣头条为代表的互联网企业对于社交裂变模式表现出的空前关注度.作为 ...

  8. fastjson的序列化属性

    在将使用JSON.toJSONString(result, SerializerFeature.PrettyFormat)将JSONObject转化为字符串时,可以指定一些序列化属性,设置转化后的字符 ...

  9. Java创建和解析Json数据方法(四)——json-lib包的使用

    (四)json-lib包的使用         既然json-lib包比org.json包重量级,那么json-lib包肯定有很多org.json包没有的类和方法,这篇笔记简单记录json-lib包中 ...

  10. 用AntRun插件测试Maven的生命周期

    在用AntRun插件之前,需要了解以下几个知识点: 1.Maven的生命周期,参考:http://www.cnblogs.com/EasonJim/p/6816340.html,主要是要知道生命周期里 ...