题目:http://poj.org/problem?id=2154

今天学了个高端的东西,Polya定理...

此题就是模板,然而还是写了好久好久...

具体看这个博客吧:https://blog.csdn.net/wsniyufang/article/details/6671122

代码如下:

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int const maxn=1e6+5;
int X,n,p,pri[maxn],cnt,ans;
bool vis[maxn];
int phi(int n)
{int ret=n;for(int i=2;i*i<=n;i++){if(n%i)continue;
//        (ret-=ret/i)%=p;// 有除法,不可随时取模 ret-=ret/i;while(n%i==0)n/=i;}
//    if(n!=1)(ret-=ret/n)%=p;// 有除法,不可随时取模 if(n!=1)ret-=ret/n;return ret%p;
}
int pw(int a,int b)
{int ret=1; a%=p;//!!!for(;b;b>>=1,(a*=a)%=p)if(b&1)(ret*=a)%=p;return ret;
}
int main()
{scanf("%d",&X);while(X--){scanf("%d%d",&n,&p);ans=0;for(int i=1;i*i<=n;i++){if(n%i)continue;(ans+=phi(n/i)*pw(n,i-1))%=p;if(i*i!=n)(ans+=phi(i)*pw(n,n/i-1))%=p;}printf("%d\n",ans);}
}

转载于:https://www.cnblogs.com/Zinn/p/9251212.html

poj2154 Color ——Polya定理相关推荐

  1. 解题报告 (五) Burnside引理和Polya定理

    Burnside引理 笔者第一次看到Burnside引理那个公式的时候一头雾水,找了本组合数学的书一看,全是概念.后来慢慢从Polya定理开始,做了一些题总算理解了.本文将从最简单的例子出发,解释Bu ...

  2. 置换群和Burnside引理,Polya定理

    定义简化版: 置换,就是一个1~n的排列,是一个1~n排列对1~n的映射 置换群,所有的置换的集合. 经常会遇到求本质不同的构造,如旋转不同构,翻转交换不同构等. 不动点:一个置换中,置换后和置换前没 ...

  3. Polya定理及例题

    概念 先讲Burnside定理: 百度百科的传送门:https://baike.baidu.com/item/burnside%E5%BC%95%E7%90%86/1505996 再放一个例题: 重点 ...

  4. [学习笔记] 如果你愿意学那么你是可以看的懂的 —— 群论与 burnside 引理和 polya 定理

    群与子群 <G,op><G,op><G,op> 是一个群需要满足以下条件: opopop 是一个满足结合律的二元运算,如 *,+. GGG 是一个集合,存在单位元 ...

  5. 置换群Polya定理(poj 2409: Let it Bead)

    可以先看 置换群burnside引理(bzoj 1004: [HNOI2008]Cards) Polya定理公式(必须在没有限制下才能使用此公式): 其中|G|为总置换数,m表示可用的颜色数,c(gi ...

  6. Polya定理,Burnside引理

    涉及到组合数学的问题,首先是群的概念: 设G是一个集合,*是G上的二元运算,如果(G,*)满足下面的条件: 封闭性:对于任何a,b∈G,有a*b∈G; 结合律:对任何a,b,c∈G有(a*b)*c=a ...

  7. Polya定理与Burnside引理及其应用

    Polya定理及其应用 群与置换群 轮换 PolyaPolyaPolya定理 BurnsideBurnsideBurnside引理 PolyaPolyaPolya定理的简单应用 PolyaPolyaP ...

  8. (每日一题)P4128 [SHOI2006] 有色图(文末有色图!)(Polya定理)(超级详细,清晰易懂)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 每日一题(莫反 / 多项式 / 母函数 / 群论) 2021.4.13 群论 嘿嘿嘿,本题题名为 有涩 ...

  9. poj2154Color polya定理+欧拉函数优化

    没想到贱贱的数据居然是错的..搞得我调了一中午+晚上一小时(哦不d飞LJH掉RP毕竟他是BUFF)结果重判就对了五次.. 回归正题,这题傻子都看得出是polya定理(如果你不是傻子就看这里),还没有翻 ...

最新文章

  1. 法院判决:优步无罪,无人车安全员可能面临过失杀人控诉
  2. 练习 hdu 5523 Game
  3. 强化学习笔记:Actor-critic
  4. wxWidgets:图像面板image panel
  5. rabbitMQ消息队列 – 面板介绍及简单demo
  6. 前端学习(1485):restful接口规则
  7. Java对象转出json并过滤指定属性
  8. PHP--去除字符串首尾空格
  9. python操作内置Sqlite数据库
  10. c罗图片带字经典语言,c罗与马塞洛表情包带字
  11. ubantu安装_Virtualbox-Ubantu-Anaconda 数据分析环境搭建
  12. vue 打印出来但显示未定义_CAD图形能显示却打印不出来如何解决?
  13. 彻底关闭360安全卫士弹窗广告方法
  14. 单片机控制的双路有源滤波器设计
  15. python哪些模板引擎比较_3 个 Python 模板库比较
  16. Android即时智能聊天软件
  17. 1124 Raffle for Weibo Followers
  18. JS的数据类型分类以及用法,没有这些基础,学不好js
  19. java list 模糊查询_如何在java List中进行模糊查询(示例代码)
  20. [ROC-RK3566-PC] 如何编译Linux_SDK并打包Ubuntu系统固件?

热门文章

  1. 动态代理之Cglib浅析
  2. ios网络开发 网络状态检查
  3. es6 --- 使用生成器交替执行
  4. canvas画出简陋版随鼠标转动眼睛且会眨眼的可爱樱桃小丸子
  5. Nginx系列二:(Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用)...
  6. oracle 如何查看日志?
  7. DAY5-小别-2018-1-15
  8. EXCEL小技巧:如何统计非空单元格
  9. Java Websocket实例
  10. cocos2d-x3.2创建项目