#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
using namespace std;
const int mod=9937;
int n,m;
int exgcd(int a,int b,int&x,int&y){//欧几里得扩展
if(b==0){
x=1;y=0;
return a;
}
int r=exgcd(b,a%b,x,y);
int t=x;
x=y;
y=t-a/b*y;
return r;
}
int pow(int a,int b){//快速幂
int ans=1;
while(b){
if(b&1){
ans=(ans*a);
}
a=(a*a);
b>>=1;
}
return ans;
}
int main(){
while(cin>>m>>n){
int ans=0;
int x=0,y=0;
if(n==0&&m==0)break;
for(int i=1;i<=n;i++){
ans+=pow(m,exgcd(n,i,x,y));
}
if(n&1){
ans+=n*pow(m,(n+1)/2);
}else{
ans+=n*(pow(m,n/2)+pow(m,n/2+1))/2;
}
cout<<ans/(2*n)<<endl;
}
return 0;
}
相关推荐
QT+SOEM主站协议库实战指南—从编译到嵌入式应用
本文提供了一份QT与SOEM开源EtherCAT主站协议库的集成实战指南。详细介绍了在Windows和Linux平台下编译SOEM库的步骤,并讲解了如何将其无缝集成到QT项目中,构建具备实时监控与控制功能的工业上位机应用。内容涵盖从环境搭建、核心协议开发到嵌入式部署与优化的全流程,为开发高性价比、自主可控的工业控制解决方案提供完整路径。
POJ 1286 Pólya 计数定理
题意 传送门 POJ 1286 题解 组合问题中,要求把旋转和翻转之后相同的状态看成是本质相同的状态,考虑 PoˊlyaPólyaPoˊlya 计数定理。设颜色有 mmm 种。对于旋转,有旋转 [0,n)[0,n)[0,n) 个 2π/n2\pi /n2π/n 的角度的置换,即 nnn 个置换群。考虑旋转 kkk 个位置后和原来相同的染色方案个数,将颜色与第 iii 个石头相同的石头的集合叫做 iii 的轨迹,个数为 n/gcd(k,n)n/gcd(k,n)n/gcd(k,n)。因此,旋转 kkk 个位置后
Elasticsearch 8.17.1 JAVA工具类
整理了Elasticsearch8.17最新版的API工具类
poj 2409 polya原理
题意: let is bead (POJ 2409) 一串由n个珠子组成的项链,用c种颜色涂染,问能形成多少种不同项链?由旋转和翻转得来的算同一种。 思路:用polya 定理解决这个计数问题,关键是分析群中置换的个数和每个置换的循环节个数,分析题目中的两种置换群,一种是旋转置换,一种是翻转置换。 #include"iostream" #include"cstdio
UOS忘记密码别慌!用LiveCD工具5分钟搞定,附命令行救援模式详细步骤
本文详细介绍了UOS系统密码遗忘时的两种解决方案:图形化LiveCD工具和命令行救援模式。针对普通用户,LiveCD工具提供5分钟快速重置密码的便捷操作;而技术人员可通过命令行深度解析系统分区挂载与密码修改流程。文章还包含安全加固建议,帮助用户预防类似问题发生。
告别手动解析!用这个Qt库轻松处理Cat 21/62等18种Asterix航空数据
本文介绍了基于Qt框架的高效Asterix报文解析库,帮助开发者轻松处理Cat 21/62等18种航空数据。该库通过协议抽象化、多维度API设计和跨平台支持,解决了手动解析的复杂性和易错问题,显著提升开发效率和系统可靠性。
[polya] POJ 2409
题意 旋转+翻转 思路 组合数学第一题 代码 #include <algorithm> //#include <bits/stdc++.h> #include <cstdio> #include <cstring> #include <iostream> using namespace std; typedef lon...
关于自制的《航空学报》latex模板(非官网模板)
《航空学报》的官网只提供了word模板,并且该期刊投稿只需要pdf版本不需要源文件。为方便latex爱好者撰写论文,提供该模板及说明给广大科研人士~
POJ2409_Let it Bead_Polya定理
题意一串项链上有 n 棵珠子,给每颗珠子图上 m 种颜色中的一种,问一共有多少种不同的涂法。特别的,如果一种涂法通过任意角度的旋转,或沿项链某条对称翻转后,能得到另一种涂法,则认为这两种是同一种。思路polya定理直观地理解 只考虑旋转,不考虑对称的情况首先计算,旋转 k 个位置后,和原来相同的染色方案的个数。 首先,按照顺时针顺序从 0 到 n - 1 给珠子编号。显然,i 珠子 与 (i +
VTK-9.5.0 1D2D3DWidget实现灰度图+深度图+3D点云显示(可轻松集成到自己的项目)
VTK1D2D3DWidget是一个基于Qt和VTK开发的3D点云可视化工具,支持RGB和深度点云数据的显示与处理。主要功能包括点云加载、可视化、保存为PLY格式文件,以及背景颜色、点间隔、坐标轴显示等参数的自定义设置。该工具采用模块化设计,核心组件包括主窗口管理类、VTK渲染组件和自定义鼠标交互样式,依赖Qt5+和VTK9.5.0库实现跨平台支持。项目提供完整的源码和构建指南,适用于点云数据的快速展示与分析。
王炸联动!OpenClaw 对接微信 / 企业微信保姆级教程,AI 办公效率翻倍
《OpenClaw对接微信/企业微信全指南》摘要:本文提供开源AI智能体OpenClaw与微信生态的完整对接教程。核心内容包括企业微信配置四步法(获取凭证、修改配置、重启服务、验证对接)和个人微信通过企业微信插件的一键打通方案。对接后支持微信/企微发指令AI秒执行、群聊机器人、文件同步等高效办公场景,并附常见问题排查代码。教程强调配置简单(全程可复制代码)、适用广泛(个人/团队场景),实现沟通与AI协作的无缝衔接。文末包含端口放行等实用命令,助力用户快速实现移动端AI办公。(149字)
POJ - 2409 Let it Bead (Polya计数)
原题链接:传送门 /* Polya定理 c种颜色染 n个对象 方案数 L = 1/n * (∑(c^g)) g是置换gi的循环节数 置换分为旋转和翻转两种方式 旋转i格时,循环节为 gcd(n,i) 翻转时要考虑n的奇偶,n为奇数时:循环节为(n+1)/2 * 循环群 n 个 n为偶数时(举正方形):循环群有两类,按边中点 循环节为 n/2 * 循环群 n/2 按对角线 循环节数为 ...
threejs中使用Reflector实现出倒影效果,并实现背景透明的效果(Reflector镜面背景透明, 倒影弱化)
在项目中遇到要实现倒影效果,threejs给我们提供了Reflector,可以轻松完成镜面效果,实现倒影。但背景不透明;并且反射出的倒影太亮了;网上没搜到解决方案, 自己修改了下源码实现了想要的效果,做个记录...
Polya定理及例题
概念 先讲Burnside定理: 百度百科的传送门:https://baike.baidu.com/item/burnside%E5%BC%95%E7%90%86/1505996 再放一个例题: 重点还是Polya定理 百度百科的传送门:https://baike.baidu.com/item/Polya/11020869 Polya定理在Burnside定...
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
polya定理 和 置换 poj2409
所属题型:组合数学要求知识:polya或者burnside题意转述:一串由n个珠子组成的项链,用c种颜色涂染,问能形成多少种不同项链。限制:旋转得来的为同一种,翻转得来的也为同一种。本题有多种算法,下面给出比较容易想到且易于理解的两种算法。推荐使用算法2,因为若是碰到高精度问题,算法2比算法1易于处理,且复杂度也比算法1低好多。核心知识点都是Polya定理。解决过程:算法一:I.计算旋转置换和翻转置换的个数:1.旋转置换 N个珠子,把项链当成一个圆,每次旋转角度为I*360/N(I∈(1,n)),共有N
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
POJ 2409 Let it Bead【polya 计数法,burnside定理】
POJ 2409 Let it Bead 算法核心:polya 计数法,burnside定理http://blog.sina.com.cn/s/blog_6f71bea30100opru.html 大意: 珠子的颜色有c种,问可组成多少种长度为s的项链? 分两种情况讨论:旋转:n种旋转方法每种旋转i个格(1<=i<=n)循环结有gcd(i,n)个翻转: (1)这种是...
TMS_WebGMaps_1.9.8.0_Full_Source
TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder
polya 定理
对polya定理中循环节的理解:把相互变换的所有元素看成一组 , polya公式的次方项就是组数 一般对于手镯刚体变换模型只考虑旋转和翻转变换。 poj 2409 #include #include #include #include #include #include #include #include #include #include #in
POJ 2409 Polya定理
来源:http://poj.org/problem?id=2409 题意:就是有一串项链,有几种颜色,问用所给的颜色着色项链,有多少种不同的方案。 思路:赤裸裸的Polya定理啊。这里说下Ploya的公式吧,至于证明,要用到生成函数了。。生成函数我都没看懂,Polya又看了一天,还是不知其所以然。不过对于其中的几个概念倒是知道了。 设奇数方案为X,则X = sigma(pow(color
polya定理应用
TT_last 原创,转载请注明。 polya定理不知道可先看潘震皓的 《置换群快速幂运算研究与探讨》,下面是根据论文所做的一些题目。 poj 2409 很裸的一道polya定理应用题目, 处理的状态有:一个点顺时针旋转 0 ~ n-1 个点 还有就是对称旋转的情况:
【裸polya定理】poj 2409 Let it Bead
poj 2409 Let it Bead http://poj.org/problem?id=2409思路polya定理经典问题:c种颜色的珠子组成长为s的项链的方案数,项链没有方向和起始位置参考代码 #include<iostream> #include<cstdio> #include<cstdlib> using namespace std;typedef long long ll; cons
polya 定理总结
公式 用cc 种颜色对 nn 个置换群G1,G2,…,GnG_1,G_2,\dots ,G_n着色,设每个置换群的循环节数为kik_i那么不同的着色总数 PG=1|G|∑ni=1ckiP_G = \frac{1}{|G|}\sum_{i=1}^n c^{k_i}常见置换群循环节总结 循环群 比如nn 颗珠子的项链,考虑绕中心旋转重合视为相同. 那么共有 nn 个循环群,其中每个循环群为:
polya定理 poj2409 Let it Bead
很经典的一道polya定理的题目,,以前看到这种具有对称性求个数的题目完全没法动。学了polya定理就能愉快的玩耍了。 polya定理很容易用,,大概就是一个这样的规律,先把所有的变换后颜色不变的情况写出来,比如这题就是: 1.如果旋转1下,前后颜色都不变 2.如果旋转2下,前后颜色都不变 ........ n.如果旋转n下,前后颜色都不变 如果n是奇数,且对着每条角平分线对折
Polya定理小结
转载请注明出处,谢谢 http://blog.youkuaiyun.com/ACM_cxlove?viewmode=contents by---cxlove 最近接触了Polya计数定理,建议之前先去学习置换群。 只会皮毛,深层定理含义及证明一般书上都有。 http://poj.org/problem?id=2409 赤裸裸的Polya啊,数据范围很小,直接枚举
poj 2409 Polya
题意:
POJ2409 Let it Bead【Polya定理】
题目大意: 给定M种颜色的珠子,每种颜色珠子的个数均不限,将这些珠子做成长度为N的项链。 问能做成多少种不重复的项链,最后的结果不会超过int类型数据的表示范围。并且两 条项链相同,当且仅当两条项链通过旋转或是翻转后能重合在一起,且对应珠子的颜 色相同。 解题思路: Polya定理的应用。先来看Polya定理。 Polya定理:设 G = {a1,a2,…,ag}是 N 个对象的置换群,用 M 种颜色给这 N 个 对象着色,则不同的着色 方案数为: |G|^(-1) *
poj 1286 和 2409 (polya 定理)
关于polya的定义网上可以搜到很多,我所了解的也是从网上搜到的,不过可以介绍几个博客,个人觉得讲的还不错。 1、关于polya的定义,http://blog.youkuaiyun.com/geniusluzh/article/details/6795412 2、将这两道题的,http://yzmduncan.iteye.com/blog/1402942 如果还不懂得话,推荐看一下吴文虎的《组...
442



被折叠的 条评论
为什么被折叠?



