题意

给出\(x\),求\(2004^x\)的所有因子和

分析

\(2004=2*2*3*167\)

则\(2004^x\)=\(2^{2x}*3^x*167^x\)

s[\(2004^x\)]=s[\(2^{2x}\)]s[\(3^x\)]s[\(167^x\)]

s[i]为积性函数

如果\(p\)为素数,则$s(p^x) = (1 + p^1 + p^2 + ... p^x) = (p^{x+1} - 1) / (p-1) $

然后求出2,3,167的逆元即可

注意开long long

代码

#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <ctime>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <string>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <vector>
#include <bitset>
using namespace std; #define ll long long
#define F(i,a,b) for(int i=a;i<=b;++i)
#define R(i,a,b) for(int i=a;i<b;++i)
#define mem(a,b) memset(a,b,sizeof(a))
#define cpy(a,b) memcpy(a,b,sizeof(b))
#pragma comment(linker, "/STACK:102400000,102400000")
inline void read(int &x){x=0; char ch=getchar();while(ch<'0') ch=getchar();while(ch>='0'){x=x*10+ch-48; ch=getchar();}} int a[4]={0,2,3,22},x;
const int mod=29;
ll work(int p,int x)
{
ll ret=1;
for(;x;x>>=1,(p*=p)%=mod) if(x&1) (ret*=p)%=mod;
return ret;
} int main()
{
while(scanf("%d",&x),x)
{
ll ans=1;ans=ans*(work(a[1],2*x+1)-1)%mod;
F(i,2,3)
ans=ans*((work(a[i]%mod,x+1)-1)*work((a[i]-1)%mod,mod-2))%mod;
printf("%lld\n",ans);
}
return 0;
}

最新文章

  1. C#委托与事件
  2. POJ 2826 An Easy Problem?! --计算几何,叉积
  3. MSDN论坛被垃圾信息刷爆了!!!
  4. 【11-01】Sublime text 学习笔记
  5. Bilateral Filtering(双边滤波) for SSAO(转)
  6. python中若干错误
  7. 初识 Asp.Net内置对象之Server对象
  8. JavaScript 关于this的理解
  9. 【iOS知识学习】_iOS动态改变TableView Cell高度
  10. 在Mac OS X中搭建STM32开发环境(2)
  11. Apache FileUpload详细介绍
  12. [转]Windows中的句柄(handle)
  13. qt下的跨目录多工程编译
  14. [原创].NET 业务框架开发实战之七 业务层初步构想
  15. 201521123015 《JAVA程序设计》第11周学习总结
  16. mysql进阶知识
  17. mysql 索引及索引创建原则
  18. swift 实践- 04 -- UIButton
  19. Ionic 1 &amp; 2 开发常见问题 Q&amp;A
  20. 工具类 | window批处理杀死指定端口进程

热门文章

  1. jree-创建普通折线图
  2. Spring Data JPA 进阶
  3. 机器学习技法总结(五)Adaptive Boosting, AdaBoost-Stump,决策树
  4. [Javascript] Link to Other Objects through the JavaScript Prototype Chain
  5. VB和VB.NET有什么区别
  6. 在linux命令行中编译和运行java文件
  7. js和jquery实现回到顶层
  8. Matlab遗传算法优化问题求解的演示样例代码
  9. 【视频】零基础学Android开发:蓝牙聊天室APP(三)
  10. Java中抽象类和接口的区别?