GCD?LCM!

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 316    Accepted Submission(s): 200

Output
T lines, find S(n) mod 258280327.
Sample Input
8
1
2
3
4
10
100
233
11037
Sample Output
1
5
13
26
289
296582
3928449
213582482
Author
SXYZ
Source
 
 
【分析】
  这题好神啊。。。又涨姿势了。。
  $$f(n)=\sum\sum [lcm(i,j)+gcd(i,j)>=n]$$
  $$=\sum_{i'}\sum_{j'}\sum_{d}[d+i'*j'*d>=n]$$
  $$=\sum_{i'}\sum_{j'}\sum_{d}[(i'*j'+1)*d>=n]$$
  $$=\sum_{i'}\sum_{j'}\sum_{d}[(i'*j'+1)*d>=n-1]-\sum_{i'}\sum_{j'}\sum_{d}[(i'*j'+1)*d==n-1]$$
  设$G(n)=\sum_{d|n}[gcd(d,\dfrac{n}{d})==1]$
  则
  $f(n)=f(n-1)-\sum_{d} G(\dfrac{n-1}{d}-1)+(2*n-1)$【后面加的是要注意i和j的范围!!!】
  $G$G是积性函数,且$G(p^k)=2$
  则可以$O(n)$筛出来。。
  然后f前面的累加,后面的nlogn处理。
  然后再累加即可。
 
 #include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
#define Maxn 1000010
#define Mod 258280327 int pri[Maxn],pl,g[Maxn],t[Maxn],f[Maxn];
bool vis[Maxn]; void init()
{
memset(vis,,sizeof(vis));
pl=;g[]=;
for(int i=;i<=Maxn-;i++)
{
if(!vis[i]) pri[++pl]=i,g[i]=;
for(int j=;j<=pl;j++)
{
if(pri[j]*i>Maxn-) break;
vis[i*pri[j]]=;
if(i%pri[j]==) g[i*pri[j]]=g[i];
else g[i*pri[j]]=*g[i]%Mod;
if(i%pri[j]==) break;
}
}
for(int i=;i<=Maxn-;i++)
{
for(int j=i;j<=Maxn-;j+=i)
{
t[j]=(t[j]+g[j/i-])%Mod;
}
}
for(int i=;i<=Maxn-;i++) f[i]=(f[i-]+(*i-)-t[i-])%Mod;
for(int i=;i<=Maxn-;i++) f[i]=((f[i]+f[i-])%Mod+Mod)%Mod;
} int main()
{
init();
int T;
scanf("%d",&T);
while(T--)
{
int n;
scanf("%d",&n);
printf("%d\n",f[n]);
}
return ;
}

【有一点点容斥的东东在么?】

2017-04-27 15:28:52

【HDU 5382】 GCD?LCM! (数论、积性函数)的更多相关文章

  1. 2015多校第8场 HDU 5382 GCD?LCM! 数论公式推导

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5382 题意:函数lcm(a,b):求两整数a,b的最小公倍数:函数gcd(a,b):求两整数a,b的最 ...

  2. 数学--数论--Hdu 1452 Happy 2004(积性函数性质+和函数公式+快速模幂+乘法逆元)

    Consider a positive integer X,and let S be the sum of all positive integer divisors of 2004^X. Your ...

  3. hdu 5382 GCD?LCM! - 莫比乌斯反演

    题目传送门 传送门I 传送门II 题目大意 设$F(n) = \sum_{i = 1}^{n}\sum_{j = 1}^{n}\left [ [i, j] + (i, j) \geqslant n \ ...

  4. hdu 5382 GCD?LCM!

    先考虑化简f函数 发现,f函数可以写成一个递归式,化简后可以先递推求出所有f函数的值, 所以可以先求出所有S函数的值,对于询问,O(1)回答 代码: //File Name: hdu5382.cpp ...

  5. 积性函数,线性筛入门 HDU - 2879

    HDU - 2879HeHe 题意:He[N]为[0,N−1]范围内有多少个数满足式子x2≡x (mod N),求HeHe[N]=He[1]×……×He[N] 我是通过打表发现的he[x]=2k,k为 ...

  6. 数学--数论--HDU 5382 GCD?LCM?(详细推导,不懂打我)

    Describtion First we define: (1) lcm(a,b), the least common multiple of two integers a and b, is the ...

  7. HDU 1452 Happy 2004 (逆元+快速幂+积性函数)

    G - Happy 2004 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Subm ...

  8. HDU 1452 Happy 2004(因子和的积性函数)

    题目链接 题意 : 给你一个X,让你求出2004的X次方的所有因子之和,然后对29取余. 思路 : 原来这就是积性函数,点这里这里这里,这里讲得很详细. 在非数论的领域,积性函数指所有对于任何a,b都 ...

  9. Mobius反演与积性函数前缀和演学习笔记 BZOJ 4176 Lucas的数论 SDOI 2015 约数个数和

    下文中所有讨论都在数论函数范围内开展. 数论函数指的是定义域为正整数域, 且值域为复数域的函数. 数论意义下的和式处理技巧 因子 \[ \sum_{d | n} a_d = \sum_{d | n} ...

随机推荐

  1. 「Vue」登陆-路由拦截器

    1.main.js设置拦截器 router.beforeEach(function (to,from,next) { if (to.meta.requireAuth) { if (store.stat ...

  2. win下jdk7环境变量的配置

    win下jdk7环境变量的配置: 单击计算机(Computer),选择属性(Properties),选择高级系统设置(Advanced systems settings), 选择环境变量(Enviro ...

  3. Solr记录-solr检索和查询数据

    Solr检索数据 在本章中,我们将讨论如何使用Java Client API检索数据.假设有一个名为sample.csv的.csv文档,其中包含以下内容. 001,9848022337,Hyderab ...

  4. Linux下/etc/passwd、/etc/shadow、/etc/group文件

    1./etc/passwd [root@prac ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbi ...

  5. Spring RedisTemplate操作-xml配置(1)

    网上没能找到全的spring redistemplate操作例子,故特意化了点时间做了接口调用练习,基本包含了所有redistemplate方法. 该操作例子是个系列,该片为spring xml配置, ...

  6. 官方资料&一些好的博客与技术点

    https://technet.microsoft.com/zh-cn/library/hh848794.aspxzh   https://msdn.microsoft.com/en-us/power ...

  7. 第7月第18天 xcode bundle ffmpeg

    1. https://zhuanlan.zhihu.com/p/24281404 2. 186  ffmpeg -i /Users/temp/Downloads/n-201402201522融资融券专 ...

  8. web.xml 配置中classpath: 与classpath*:的区别——(十一)

    首先 classpath是指 WEB-INF文件夹下的classes目录 解释classes含义: 1.存放各种资源配置文件 eg.init.properties log4j.properties s ...

  9. orm 缺点

    背景 提起orm,在我开发这几年可是阴魂不散,因为我的开发没人带,全是自己琢磨,好处是很多东西都懂,都理解的透彻,缺点是见得少,接触少.而我一直没用orm,但是又到处听说orm,但我总想不明白有啥用处 ...

  10. 计算机底层知识拾遗(九)深入理解内存映射mmap

    内存映射mmap是Linux内核的一个重要机制,它和虚拟内存管理以及文件IO都有直接的关系,这篇细说一下mmap的一些要点. 修改(2015-11-12):Linux的虚拟内存管理是基于mmap来实现 ...