2017 CCPC 杭州 HDU6265B 积性函数
题目链接 http://acm.hdu.edu.cn/downloads/CCPC2018-Hangzhou-ProblemSet.pdf
B题 数论题 h(n)=∑ d|n φ(d) × n /d 求一个数的h值 我们只要意识到他是一个积性函数就解决了 这个函数看起来很像狄利克雷卷积 我们构造一个函数f(n)=n;h(n)=∑ d|n φ(d) × f(n /d)
欧拉函数φ是积性函数 构造的f是完全积性函数 所以他们的狄利克雷卷积h也是积性函数 然后推导一下答案就是 ∑(pi^qi+(pi-1)*qi*pi^(qi-1)) (1<=i<=m)
其实当你没有意识到他是一个积性函数 推导的时候也可以发现他可以用组合情况写 这就用到了子集生成知识了很简单一个dfs就可以了 m最大20 子集个数最大就是2^20 可以接受
然后枚举子集就可以得到结果了
关于 积性函数和狄利克雷卷积推荐几个博客 https://www.cnblogs.com/jianglangcaijin/p/6035766.html#undefined
https://blog.csdn.net/liyizhixl/article/details/79997478
https://www.cnblogs.com/wfj2048/p/6537861.html
积性函数性质
狄利克雷卷积性质:
- (f∗g)=∑d|nf(d)g(nd)(f∗g)=∑d|nf(d)g(nd)
- f∗(g∗h)=(f∗g)∗hf∗(g∗h)=(f∗g)∗h
- f∗(g+h)=f∗g+f∗hf∗(g+h)=f∗g+f∗h
- f∗g=g∗f
位向量法子集生成模板 O(n*2^n)
#include<bits/stdc++.h>
using namespace std;
const int maxn = 2e5+,M = ;
typedef long long ll;
int a[maxn],b[maxn];
void print_subset(int n, int b[],int cur)
{
if(cur==n)
{
for(int i=;i<cur;i++)
{
if(b[i])
printf("%d ",a[i]);
}
printf("\n");
return;
}
b[cur]=;
print_subset(n,b,cur+);
b[cur]=;
print_subset(n,b,cur+);
}
int main()
{
int n;
cin>>n;
for(int i=;i<n;i++)
a[i]=i+;
memcpy(b,a,sizeof(a));
print_subset(n,b,); //传参后会修改b的值 所以copy一个数组
}
AC代码
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5+ ,mod = ;
typedef long long ll;
ll poww(ll a,ll b)
{
ll ans=;
while(b>)
{
if(b&)
ans=(ans*a)%mod;
b=b>>;
a=(a*a)%mod;
}
return ans;
}
int main()
{
int t;
cin>>t;
while(t--)
{
ll q,p,ans=;
int m;
cin>>m;
while(m--)
{
cin>>p>>q;
ll temp=;
temp=(temp*(p-))%mod;
temp=(temp*q)%mod;
temp=(temp*poww(p,q-))%mod;
temp=(temp+poww(p,q))%mod;
ans=ans*temp%mod;
//cout<<ans<<endl;
}
cout<<ans<<endl;
}
}
2017 CCPC 杭州 HDU6265B 积性函数的更多相关文章
- bzoj2693--莫比乌斯反演+积性函数线性筛
推导: 设d=gcd(i,j) 利用莫比乌斯函数的性质 令sum(x,y)=(x*(x+1)/2)*(y*(y+1)/2) 令T=d*t 设f(T)= T可以分块.又由于μ是积性函数,积性函数的约束和 ...
- hdu1452 Happy 2004(规律+因子和+积性函数)
Happy 2004 题意:s为2004^x的因子和,求s%29. (题于文末) 知识点: 素因子分解:n = p1 ^ e1 * p2 ^ e2 *..........*pn ^ en 因子 ...
- HDU 1452 Happy 2004 (逆元+快速幂+积性函数)
G - Happy 2004 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Subm ...
- spoj 3871. GCD Extreme 欧拉+积性函数
3871. GCD Extreme Problem code: GCDEX Given the value of N, you will have to find the value of G. Th ...
- POJ 2480 Longge's problem (积性函数,欧拉函数)
题意:求∑gcd(i,n),1<=i<=n思路:f(n)=∑gcd(i,n),1<=i<=n可以知道,其实f(n)=sum(p*φ(n/p)),其中p是n的因子.为什么呢?原因 ...
- poj 2480 Longge's problem 积性函数
思路:首先给出几个结论: 1.gcd(a,b)是积性函数: 2.积性函数的和仍然是积性函数: 3.phi(a^b)=a^b-a^(b-1); 记 f(n)=∑gcd(i,n),n=p1^e1*p2^e ...
- HDU 1452 Happy 2004(因子和的积性函数)
题目链接 题意 : 给你一个X,让你求出2004的X次方的所有因子之和,然后对29取余. 思路 : 原来这就是积性函数,点这里这里这里,这里讲得很详细. 在非数论的领域,积性函数指所有对于任何a,b都 ...
- bzoj 2693: jzptab 线性筛积性函数
2693: jzptab Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 444 Solved: 174[Submit][Status][Discus ...
- HDU1452Happy 2004(高次幂取模+积性函数+逆元)
题目意思:2004^x的所有正因数的和(S)对29求余:输出结果: 原题链接 题目解析:解析参照来源:点击打开链接 因子和 6的因子是1,2,3,6; 6的因子和是s(6)=1+2+3+6=12; 2 ...
随机推荐
- npm安装淘宝镜像cnpm报错npm ERR! errno -4048
今天在安装淘宝镜像的时候报错了,第一次遇上,表示很懵逼 然后捣腾了半天以为是npm install 的时候出错,后来网上查到是 装淘宝镜像cnpm的时候报错,好像是权限问题,解决方法: npm ca ...
- 套接字、UDP通信、TCP通信、TCP/IP协议簇
一.套接字(socket) 1.英语单词socket:n.插座:穴:v.插入插座 2.套接字就是源IP地址和目的IP地址.源端口号和目的端口号的组合,是通过传输层进行通信的.IP指定电脑,端口指定某一 ...
- Perl字符集就是方括号(或称中括号)里一连串可能的字符,只匹配单一字符,该单一字符可以是字符集里的任何一个,“-”在字符集里有特殊含义:表示某个范围的字符。而字符集意外的连字符不具有特殊意义。
Perl字符集就是方括号(或称中括号)里一连串可能的字符,只匹配单一字符,该单一字符可以是字符集里的任何一个,“-”在字符集里有特殊含义:表示某个范围的字符.而字符集意外的连字符不具有特殊意义.
- 2. 区分散列的 undef 值, 和手动赋值 0 不一样。1. 使用exists函数,散列中有这个键(必须是keys %hash 有这结果),则返回真值,
2. 123 my %vertical_alignment; 124 $vertical_alignment{"subscripting"} = 0; 125 unle ...
- php基础查找算法
1.顺序查找 function line_search($array,$tar) { if(!is_array($array) || count($array) < 1) return fals ...
- vue 接口统一管理
在外部创建一个API文件夹,然后创建一个API.js 例如 const filmbanner = 'api/billboard/home?__t=1498823077473'; const film ...
- Visual Studio 2013/2015/2017快捷键(转载)
本文为转载文章,原文:[心存善念] [Fonour] 项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示 Solution Explorer(解 ...
- TP-LINK配置公网映射
公室里的主机获取到的地址是路由器分配的私网地址,通常是192.168.1.x,只有挂在同一个路由器底下的其它主机可以访问,路由器外面的主机是无法访问的.但是有时候我们希望把办公室内的服务器上的服务暴露 ...
- Linux一键安装web环境全攻略phpstudy版
此教程主要是应对阿里云Linux云服务器ecs的web环境安装,理论上不限于阿里云服务器,此教程对所有Linux云服务器都具有参考价值. 写这篇文章的目的:网上有很多关于Linux一键安装web环境全 ...
- NodeJs中数据库的使用
另一遍通用的NODEJS数据库方法koa,express,node 通用方法连接MySQL 1.Node.js 连接 MySQL $ cnpm install mysql 连接mysql: var m ...