phi
给定 \(T\) 个正整数 \(n\) ,对于每个 \(n\) ,输出做小的 \(m\) ,使得 \(\phi (m)\ge n\).
思路1:搞个线性欧拉函数筛,后缀最大值,二分查找
思路2:直接求最小比 \(n\) 大的质数
思路2的code
#include<bits/stdc++.h>
using namespace std;
const int N=1000006;
int prime[N],tot;
bool vis[N];
void init()
{
for(int i=2;i<N;++i)
{
if(!vis[i])
{
prime[++tot]=i;
}
for(int j=1;j<=tot;++j)
{
if(i*prime[j]>N)break;
vis[i*prime[j]]=1;
}
}
}
int T,n;
int main()
{
init();
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
if(n==1)puts("1");
else printf("%d\n",prime[upper_bound(prime+1,prime+tot+1,n)-prime]);
}
return 0;
}
phi的更多相关文章
- LLVM 笔记(二)—— PHI node
ilocker:关注 Android 安全(新手) QQ: 2597294287 什么是 PHI node? 所有 LLVM 指令都使用 SSA (Static Single Assignment,静 ...
- 【BZOJ-3643】Phi的反函数 数论 + 搜索
3643: Phi的反函数 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 141 Solved: 96[Submit][Status][Discuss ...
- LLVM 笔记(一)—— phi 指令
ilocker:关注 Android 安全(新手) QQ: 2597294287 语法: <result> = phi <ty> [ <val0>, <lab ...
- cassandra中对节点失败与否的探测方法, the Phi accrual Failure Dector,附论文
(1)在分布式系统中,对于某个节点是否还“活着”的探测,通常是设定一个时间的阀值,然后根据接收到的“心跳”信息的间隔,来判定这个节点是否还活着,然后返回一个bool值: 但这种做法很容易造成误判:因为 ...
- 【BZOJ 2818】Gcd - 筛法求素数&phi()
题目描述 给定整数,求且为素数的数对有多少对. 分析 首先筛出所有的素数. 我们考虑枚举素数p,统计满足的个数,等价于统计的个数,即统计以内满足互质的有序数对个数. 不难发现,也就是说,我们只要预处理 ...
- 既约分数-phi
Description 小明正在学习分数这一章,他想知道对于一个真分数b/a而言,当分母a在[2,N]之间时,存在多少个既约分数,例如当N=4时,有以下几个1/2,1/3,1/4,2/3,3/4这五个 ...
- POJ2480 Longge's problem gcd&&phi
题意简洁明了.做这题主要是温习一下phi的求法.令gcd(i,n)=k,实际上我们只需要求出有多少个i使得gcd(i,n)=k就可以了,然后就转化成了求phi(n/k)的和,但是n很大,我们不可能预处 ...
- HDU5634 Rikka with Phi 线段树
// HDU5634 Rikka with Phi 线段树 // 思路:操作1的时候,判断一下当前区间是不是每个数都相等,在每个数相等的区间上操作.相当于lazy,不必更新到底. #include & ...
- hdu 5279 Reflect phi 欧拉函数
Reflect Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://bestcoder.hdu.edu.cn/contests/contest_chi ...
- HDU 5634 Rikka with Phi 线段树
题意:bc round 73 div1 D 中文题面 分析:注意到10^7之内的数最多phi O(log(n))次就会变成1, 因此可以考虑把一段相同的不为1的数缩成一个点,用平衡树来维护. 每次求p ...
随机推荐
- Android 隐藏手机号中间四位和隐藏邮箱地址中间四位
/** * 手机号用****号隐藏中间数字 * * @param phone * @return */public static String settingphone(String phone) { ...
- Android简单计时器(转)
原文:http://blog.csdn.net/fwwdn/article/details/7550822 本文利用ContextMenu(上下文菜单),Chronometer实现简单计数器. Mai ...
- vs2015中安装cplex攻略以及解决丢失cplex.dll问题
转:http://blog.sina.com.cn/s/blog_61f0374801014swp.html 按:相信配置过CPLEX的人大多有过痛苦而难忘的经历,本人亦不例外,纠结挣扎了一个下午加一 ...
- JSP上传图片程序
1.下载相应的组件的最新版本 Commons FileUpload 可以在http://jakarta.apache.org/commons/fileupload/下载 附加的Commons IO ...
- JAVA(windows)安装教程
JAVA(windows)安装教程 一.下载: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...
- python2学习------基础语法2(函数)
1.函数 # 无参数函数 def loopTest2(): a=1; while a<40: print a; a=a+1; if a==35: continue; else: print 'o ...
- Mapreduce实例——WordCount
实验步骤 切换目录到/apps/hadoop/sbin下,启动hadoop. cd /apps/hadoop/sbin ./start-all.sh 2.在linux上,创建一个目录/data/map ...
- 在 Linux 上实现一段时间后自动登出非活动用户
参考 编辑 ~/.bashrc 或 ~/.bash_profile 文件: $ vi ~/.bashrc 或, $ vi ~/.bash_profile 将下面行加入其中: TMOUT=100 这会让 ...
- django中使用ORM模型修改数据库的表名
在django中,使用models.py创建好一张表后,如果不指定表的名字,那么表的名字就默认为 model_modelname 例如: class Book(models.Model): id = ...
- solus linux 更新源
添加源(清华大学开源软件镜像)sudo eopkg ar Solus https://mirrors.tuna.tsinghua.edu.cn/solus/shannon/eopkg-index.xm ...