bzoj2705 [SDOI2012]Longge的问题
来源:互联网 发布:sql 查询表的所有列名 编辑:程序博客网 时间:2024/05/20 10:13
题目
简单题,狄利克雷卷积一下就好了。
最开始我还以为线性筛就可以了。怕是失了智。
#include<bits/stdc++.h>using namespace std;long long n,m,ans;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; return p1==p2&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)?EOF:*p1++;}inline long long read(){ long long x=0,b=1; char c=nc(); for(;!(c<='9'&&c>='0');c=nc())if(c=='-')b=-1; for(;c<='9'&&c>='0';c=nc())x=x*10+c-'0'; return x*b;}inline long long phi(long long x){ long long tmp=x; for(long long i=2;i<=m;i++) { if(x%i)continue; tmp=tmp/i*(i-1); while(x%i==0)x/=i; } if(x>1)tmp=tmp/x*(x-1); return tmp;}int main(){ freopen("in.txt","r",stdin); n=read(); m=sqrt(n); for(int i=1;i<=m;i++) { if(n%i)continue; ans+=n/i*phi(i); if(i*i<n)ans+=i*phi(n/i); } cout<<ans; return 0;}
阅读全文
0 0
- bzoj2705[SDOI2012]Longge的问题
- 【SDOI2012】【BZOJ2705】Longge的问题
- [BZOJ2705][SDOI2012]Longge的问题
- BZOJ2705: [SDOI2012]Longge的问题
- bzoj2705 [SDOI2012]Longge的问题
- BZOj2705: [SDOI2012]Longge的问题
- BZOJ2705 [SDOI2012]Longge的问题
- [BZOJ2705][SDOI2012]Longge的问题
- BZOJ2705: [SDOI2012]Longge的问题
- bzoj2705【SDOI2012】Longge的问题
- Longge的问题[SDOI2012][bzoj2705]
- BZoj2705: [SDOI2012]Longge的问题
- 【SDOI2012】bzoj2705 Longge的问题
- bzoj2705: [SDOI2012]Longge的问题
- BZOJ2705: [SDOI2012]Longge的问题
- bzoj2705[SDOI2012] Longge的问题
- bzoj2705 [SDOI2012]Longge的问题
- 【bzoj2705】[SDOI2012]Longge的问题
- Visiting Peking University(水)
- Codevs 2597 团伙
- 3.3 基于 Socket 协议的网络通信详解
- 《C++Primer》读书笔记汇总
- 使用LinkedList模仿队列
- bzoj2705 [SDOI2012]Longge的问题
- Docker入门
- 9。24 mapreduce简单实例练习
- Leetcode之Word Search 问题
- 数据结构的堆栈和内存的堆栈
- Android高效加载大图、多图解决方案,有效避免程序OOM
- 4.1 解析 XML 数据的三种方式详解
- HDU 1010 Tempter of the Bone(奇偶减枝)
- JavaScript 之数组方法总结