// 筛选法
// 先求出 sqrt(1<<31)内的素数
// 然后筛选出符合要求的数
// 详情见代码注释
// #pragma comment(linker, "/STACK:1024000000,1024000000")
#include <iostream>
#include <algorithm>
#include <queue>
#include <stack>
#include <math.h>
#include <stdio.h>
#include <string.h>
using namespace std;
#define MOD 1000000007
#define maxn 1000010
#define maxm 48010
#define LL long long
int pr[maxm];
int p;
void getP(){
int i,j;
for(i=;i<maxm;i+=)
pr[i]=;
for(i=;i*i<maxm;i+=)
if(!pr[i])
for(j=i*i;j<maxm;j+=i)
pr[j]=;
pr[p++]=; // printf("%d ",p);
for(i=;i<maxm;i+=)
if(!pr[i]) pr[p++]=i;//,printf("%d ",i);
}
int fac[maxn],f[maxn],lt[maxn];
int main(){
getP();
int T;
int A,B;
LL tp;
scanf("%d",&T);
int i;
LL j,k;
while(T--){
scanf("%d %d",&A,&B);
LL len=B-A;
for(i=;i<=len;i++) fac[i]=,f[i]=false,lt[i]=A+i;
tp=;
for(i=;i<p;i++){ // 素数从 3 开始 因为偶数时不可能符合要求的
tp=tp*pr[i]*pr[i];
if(tp>B) break;
for(j=(A-+pr[i])/pr[i];j*pr[i]<=B;j++)
{
k=j*pr[i];
if(j%pr[i]==) f[k-A]=true;// 去掉 平方因子
if((j*pr[i]-)%(pr[i]-)!=) f[k-A]=true; // 条件3
fac[k-A]++; // 条件 2
lt[k-A]=lt[k-A]/pr[i];可能出现比sqrt(1<<31)大的素因子,所以需要知道
}
tp=;
}
int ans=;
for(i=;i<=len;i++)// 这里就写的比较繁杂了 就是各种情况讨论
if(!f[i]){
if(fac[i]==&&lt[i]>){
tp=i+A;
if((tp-)%(lt[i]-)==)
ans++;
}else if(fac[i]>){
tp=i+A;
if(lt[i]==) ans++;
else
if((tp-)%(lt[i]-)==)
ans++;
}
}
printf("%d\n",ans);
}
}

uestc 1725 吴神数的更多相关文章

  1. uestc 1722 吴神的表白

    // 这题做的我好难过 不是因为没有思路 而是因为超数据类型范围的事// ax+by=c a,b,c>0// 那么该直线经过 1 2 4三个象限// 2 4 象限的第一整数解肯定是该象限最优解/ ...

  2. uestc 1721 吴神,人类的希望

    // 将n个相同的球放进m个盒子 盒子不为空的方法总数// dp[i][j] 表示i个盒子 j个球的方法总数// 递推关系 dp[i][j]=dp[i-1][j-1]+d[i][j-i]// a. i ...

  3. CPC23-4-K. 喵喵的神数 (数论 Lucas定理)

    喵喵的神∙数 Time Limit: 1 Sec Memory Limit: 128 MB Description 喵喵对组合数比較感兴趣,而且对计算组合数很在行. 同一时候为了追求有后宫的素养的生活 ...

  4. UESTC cdoj 619 吴神,人类的希望 (组合数学)

    枚举盒子的个数,先把总数n减去掉box*k保证每个盒子至少有k个小球,剩下的小球放入盒子中可以为空, 加入box个小球保证每个盒子至少有一个小球,问题转化成不可区分小球放入不可区分盒子非空的方案数. ...

  5. UESTC - 1168 凤神与狗

    原题链接 凤神隐居山林,与猫狗为伴.起初,他拥有cc只猫和dd只狗.每天下午他随机从中选择一只出去游玩并且晚上归来.如果他带的是狗,则第二天早上狗的数量增加ww只,否则,猫的数量增加ww只.由于凤神特 ...

  6. CPC23-4 K.喵喵的神·数

    题意:给出整数T,P,求c(T,P) mod P. 解法:用卢卡斯定理. 卢卡斯定理:解决c(n,m) mod p问题.Lucas(n,m,p)=c(n%p,m%p)*Lucas(n/p,m/p,p) ...

  7. 盐城5138.6118(薇)xiaojie:盐城哪里有xiaomei

    盐城哪里有小姐服务大保健[微信:5138.6118倩儿小妹[盐城叫小姐服务√o服务微信:5138.6118倩儿小妹[盐城叫小姐服务][十微信:5138.6118倩儿小妹][盐城叫小姐包夜服务][十微信 ...

  8. 没有我的A协

    我离开A协(北京林业大学ACM爱好者协会)有段时间了,严格算来,应该有4年了.现在协会里的大部分人我都不认识.A协在我离开之后的这段时间里也产生了翻天覆地的变化. A协已经不只是一个以竞赛培训为目的的 ...

  9. 第八届郑州轻工业学院ACM(程序设计大赛)校内预选赛

    郑州轻工业学院有一个大赛,把几个有趣的题目分享一下.下面是题目连接,喜欢了就点点... 斗破苍穹 礼上往来 统计人数 神の数 炉石传说 Mathematics and Geometry 马拉松后记 斗 ...

随机推荐

  1. 安装JDK后JRE与JVM联系浅谈

    转自安装JDK后JRE与JVM联系浅谈 安装JDK后JRE.JVM之间的关系是什么呢?那么我们要从安装JDK慢慢说起. 如果安装了JDK,会发同你的电脑有两套JRE: 一套位于 <JDK安装目录 ...

  2. A const field of a reference type other than string can only be initialized with null Error [duplicate]

    I'm trying to create a 2D array to store some values that don't change like this. const int[,] hiveI ...

  3. Feature Flag

    know more from here: https://www.youtube.com/watch?v=WMRjj06R6jg&list=UUkQX1tChV7Z7l1LFF4L9j_g F ...

  4. js注册验证【转】

    function getFocus() //设置用户名文本框获取焦点 { document.getElementById("txtuname").focus(); } functi ...

  5. PHP图标类库 - JpGraph使用详解

    http://w3note.com/web/181.html 微信平台开发的推广支持应用里,为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二 ...

  6. POJ1068Parencodings

    http://poj.org/problem?id=1068 这个题的话就是先把给出来的一串数字转化成括号,再把括号转化成要求的,最后输出就行了 #include<cstdio> #inc ...

  7. 嘿嘿,JAVA里第一次运行单元测试成功,立存

    按书上写的单元测试. 居然一次过,爽!!! package org.smart4j.chapter2.test; import java.util.HashMap; import java.util. ...

  8. hdu 1796 How many integers can you find

    容斥原理!! 这题首先要去掉=0和>=n的值,然后再使用容斥原理解决 我用的是数组做的…… #include<iostream> #include<stdio.h> #i ...

  9. asp.net后台获取路径的各种方法归纳

    asp.net后台获取路径的各种方法归纳   1.Request.CurrentExecutionFilePath    获取当前请求的虚拟路径,不同于 FilePath,差别在于如果请求已在服务器代 ...

  10. hdu2018

    http://acm.hdu.edu.cn/showproblem.php?pid=2018 #include<iostream> #include<stdio.h> #inc ...