hdu 2204
来源:互联网 发布:淘宝 排名 编辑:程序博客网 时间:2024/06/10 07:20
枚举一下再容斥。
贴代码。
#include<iostream>#include<cstdio>#include<cstring>#include<cmath>using namespace std;const int N=65;#define eps 1e-8int prime[N],isprime[N];void getPrime(){ int i,j; prime[0]=0; for(i=0;i<N;i++) isprime[i]=1; for(i=2;i<N;i++) if(isprime[i]){ prime[++prime[0]]=i; for(j=2;i*j<N;j++) isprime[i*j]=0; }}int main(){ //freopen("input.txt","r",stdin); long long n,tmp; getPrime(); while(cin>>n){ int ans=1; for(int i=1;i<=prime[0];i++){ tmp=(long long)(pow((double)n,1.0/prime[i])+eps); //不加eps则WA if(tmp==1) //减枝,下同 break; ans+=tmp-1; } for(int i=1;i<=prime[0];i++) for(int j=i+1;j<=prime[0];j++){ tmp=(long long)(pow((double)n,1.0/(prime[i]*prime[j]))+eps); if(tmp==1) break; ans-=(tmp-1); } for(int i=1;i<=prime[0];i++) for(int j=i+1;j<=prime[0];j++) for(int k=j+1;k<=prime[0];k++){ tmp=(long long)(pow((double)n,1.0/(prime[i]*prime[j]*prime[k]))+eps); if(tmp==1) break; ans+=(tmp-1); } printf("%d\n",ans); } return 0;}
0 0
- hdu 2204
- hdu 2204
- Hdu 2204
- HDU 2204 (数论)
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- hdu-
- Query 1.9 移除了 $.browser 的替代方法
- 路由器级联方式(二级路由为例)
- 稀疏表示人脸识别
- 分治法——归并排序
- 编辑文章 - 博客频道 - CSDN.NET
- hdu 2204
- hdu1253BFS入门
- HNU12884_Area Coverage(扫描线/线段树+离散化)
- 在汉澳sinox2014建立ZFS高可靠文件存储系统
- HDU 4951
- windows编程--动态加载光标和图标
- JSON学习
- PHP注释以及各种语言的注释
- Objective-c 文件的基本操作