poj2409

POJ2409 BurnSide 定理的简单应用+轨道 稳定化子定理介绍(不证明) 世界真的很大 今天的集训老师上午直接讲了这个什么定理,然后在他以为都听懂了的情况下继续讲题。。。无奈我只得花了一上午看这个**群论,并没有把 轨道定理证明出来。。但这个定理如果不对群论有了解的话看不懂的,所以还是浅谈一下。。 首先这道poj2409,题目大意是,给你c种颜色,和一条n长度的项链,有多少种染色方案,嗯,就是这样,,(但是如果两种方案旋转或翻转之后是相同的 阅读详情
Let it Bead

Description

"Let it Bead" company is located upstairs at 700 Cannery Row in Monterey, CA. As you can deduce from the company name, their business is beads. Their PR department found out that customers are interested in buying colored bracelets. However, over 90 percent of the target audience insists that the bracelets be unique. (Just imagine what happened if two women showed up at the same party wearing identical bracelets!) It's a good thing that bracelets can have different lengths and need not be made of beads of one color. Help the boss estimating maximum profit by calculating how many different bracelets can be produced. 

A bracelet is a ring-like sequence of s beads each of which can have one of c distinct colors. The ring is closed, i.e. has no beginning or end, and has no direction. Assume an unlimited supply of beads of each color. For different values of s and c, calculate the number of different bracelets that can be made.

Input

Every line of the input file defines a test case and contains two integers: the number of available colors c followed by the length of the bracelets s. Input is terminated by c=s=0. Otherwise, both are positive, and, due to technical difficulties in the bracelet-fabrication-machine, cs<=32, i.e. their product does not exceed 32.

Output

For each test case output on a single line the number of unique bracelets. The figure below shows the 8 different bracelets that can be made with 2 colors and 5 beads.

Sample Input

1 1
2 1
2 2
5 1
2 5
2 6
6 2
0 0

Sample Output

1
2
3
5
8
13
21

Source

polya计数方法。
Polya定理:设G是n个对象的一个置换群,用m种颜色涂染这n个对象,则不同染色的方案数L=1/|G|*[m^c(a1)+m^c(a2)+....+m^c(an)].其中c(ai)是某个置换的循环数.
1.旋转置换.
我们假设依次顺时针旋转1~n个,则循环个数=gcd(i,n);
2.翻转置换
当n为偶数时,分两种情况,一种是中心轴在两个对称对象上,则循环个数为n/2+1,另一种是对称轴两边分别有n/2个对象,则循环个数为n/2;
当n为奇数时,对称轴就只能在一个对象上,则循环个数为n/2+1;
代码如下:

#include<stdio.h>  
#include<math.h>  
  
int gcd(int a,int b){  
    if(!b)  
        return a;  
    return gcd(b,a%b);  
}  
  
int main(void){  
    int c;  
    int s;  
    while(scanf("%d%d",&c,&s),s||c){  
        int sum=0;  
        for(int i=1;i<=s;i++)  
            sum+=pow(c,gcd(s,i));  
        if(s%2){  
            for(int i=1;i<=s;i++)  
            sum+=pow(c,s/2+1);  
        }  
        else{  
            for(int i=1;i<=s/2;i++)  
                sum+=pow(c,s/2)+pow(c,s/2+1);       
        }  
        printf("%d\n",sum/2/s);  
    }  
    return 0;  
}




基于Codex与Skills的学术研究自动化全流程实战指南 还在为海量文献下载、整理、阅读和综述写作而头疼吗?面对堆积如山的PDF,你是否感到无从下手?从选题、文献检索、到写作、绘图、润色,再到应对AI检测和审稿意见,学术研究的每一步都充满挑战。本文将为你带来一套堪称“王炸组合”的解决方案: Codex + Skills 。这不是简单的工具介绍,而是一套从零开始,覆盖学术研究全流程的保姆级实战教程。我们将手把手教你如何安装、配置,并利用强大的Skills(技能)自动化处理文献下载管理、高效撰写综述、生成专业图表、智能润色降重,直至应对审稿。无论你是科研新手还是希望提 阅读详情

相关推荐

JOOQ用法和实例

jOOQ,是一个ORM框架,利用其生成的Java代码和流畅的API,可以快速构建有类型约束的安全的SQL语句。jOOQ的核心优势是可以将数据库表结构映射为Java类,包含表的基本描述和所有表字段。通过jOOQ提供的API,配合生成的Java代码,可以很方便的进行数据库操作生成的Java代码字段类型是根据数据库映射成的Java类型,在进行设置和查询操作时,因为是Java代码,都会有强类型校验,所以对于数据的输入,是天然安全的,极大的减少了SQL注入的风险。

m0_67403076的博客 1378

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 个位置后

neweryyy的博客 272

【WebApi + Sqlserver】 使用C#编写WebApi并打开sqlserver数据库进行访问,代码适用于简单练习,真实开发需自行完善

【WebApi + Sqlserver】 使用C#编写WebApi并打开sqlserver数据库进行访问,代码适用于简单练习,真实开发需自行完善

2302_78387246的博客 3594

poj 2409 polya原理

题意:  let is bead (POJ 2409) 一串由n个珠子组成的项链,用c种颜色涂染,问能形成多少种不同项链?由旋转和翻转得来的算同一种。 思路:用polya 定理解决这个计数问题,关键是分析群中置换的个数和每个置换的循环节个数,分析题目中的两种置换群,一种是旋转置换,一种是翻转置换。 #include"iostream" #include"cstdio

lemon_boluo的博客 851

从模拟到实战:移远EC800M单片机MQTT接入OneNet全流程解析

本文详细解析了移远EC800M单片机通过MQTT协议接入OneNet平台的全流程,涵盖环境准备、模拟设备搭建、硬件迁移、数据交互调试及性能优化等关键步骤。针对常见问题如AT指令缓冲区溢出、心跳间隔设置等提供实战解决方案,帮助开发者高效实现物联网设备稳定接入。

weixin_29215815的博客 432

【Python进阶】VSCode Python开发完全指南:从环境配置到高效调试

本文通过15个实战案例,系统讲解VSCode进行Python开发的环境配置、编码技巧、调试方法及性能优化,帮助初学者快速构建专业开发环境。

赶紧的博客 3767

poj2409(纯Polya定理)

#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

Keep_Trying_Go的博客 370

PMSM控制系列文章进阶-8.电流、角度采样及其同步

摘要:本文分析了高低压电机在电流和角度采样中的不同方案选择。高压电机采用霍尔传感器和旋变进行隔离采样,低压电机则使用shunt电阻和磁编码器以降低成本。重点讨论了采样时间补偿问题:电流采样需与PWM周期同步,角度采样需考虑传感器延迟;通过park变换和反park变换时需补偿采样与发波的时间差,提出了通过测试母线电流或Ud变化来验证补偿时间准确性的方法。文中还介绍了对传感器信号进行软解码处理的方法,包括消除直流偏置、增益误差和正交误差等参数的自学习过程。

weixin_41343701的博客 613

[polya] POJ 2409

题意 旋转+翻转 思路 组合数学第一题 代码 #include &lt;algorithm&gt; //#include &lt;bits/stdc++.h&gt; #include &lt;cstdio&gt; #include &lt;cstring&gt; #include &lt;iostream&gt; using namespace std; typedef lon...

Aria461863631的博客 295

uniapp - 解决在线预览PDF文件空白打不开的问题,无论是后端下载二进制文件流pdf还是本地插件或JS预览查看打开白屏不显示,详细排查解决(适用于移动端H5网页、安卓/苹果app、微信小程序)

uniapp App端 实现pdf文件预览打开白屏解决,uniapp 在线预览pdf打开一片空白,跨域白屏,uni-app中使用WebView预览PDF文件打开空白,微信小程序(uniapp)预览PDF空白怎么办,下载PDF文件流后打开空白或无法打开的问题,Uniapp H5网页下载二进制pdf文件页面空白以及解决文件损坏打不开的情况,Uniapp app在线预览pdf文件流,PDF加载出来怎么办,服务器后端返回PDF文件流后前端进行下载但打开后一片白屏,解决pdf文件流,预览全是空白页,pdf文件流,下载

🏆 前端领域优质创作者 1万+

Python爬虫实战:爬取携程旅游平台数据,我拆解了动态反爬+Cookie续命(附完整可运行代码)

反爬类型表现形式应对思路sign参数返回403/空数据逆向JS还原加密逻辑Cookie时效登录后1小时Cookie失效定时刷新Cookie/保存登录态行为检测爬取过快触发验证码模拟真人延时/随机点击IP封禁单IP爬取超50条数据被封付费代理池/降低请求频率爬取携程旅游平台数据的核心,不是“简单的HTTP请求”,而是“理解平台的反爬逻辑并合规适配”——从sign参数破解到Cookie维护,再到行为模拟,每一步都是对HTTP协议、前端加密、用户行为的深度理解。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1715

POJ 2409-Let it Bead(Polya计数)

题目地址:POJ 2409 题意:给一个包含s个珠子的项链,用c种颜色对其染色,问存在多少个不同的项链。 思路:和上一篇POJ 1286差不多。 #include #include #include #include #include #include #include #include #include #include #include //#pragma comm

Rocky0429 1435

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

POJ 2409 Let it Bad

polya定理

Ajwallet 469

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【poj2409】 Let it Bead

http://poj.org/problem?id=2409(题目链接) 题意   一个n个珠子的项链,每个珠子可以被染成t种颜色。项链可以翻转和旋转,问不同的染色方案数。 Solution   Pólya定理。   旋转:如果逆时针旋转i颗珠子的间距,则珠子0,i,2i,······构成一个循环。这个循环有n/gcd(n,i)个元素。根据对称性,所有循环的长度相同,因此一共有gcd(...

weixin_30758821的博客 101

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[代码]POJ 2409 Let it Bead

Abstract POJ 2409 Let it Bead Polya定理 Body #include <cstdio>#include <cstring>using namespace std;typedef long long LL;const int MaxN = 33;LL C, S, G, Ans;LL Pow(LL x, LL p){ L...

weixin_33733810的博客 107

POJ 2409 Let it Bead

POJ_2409     这个题目和POJ_1286很像,拿来练一下刚学的polya定理。 #include&lt;stdio.h&gt;#include&lt;string.h&gt;#define MAXD 35long long int elem[MAXD];int C, S;long long int getpow(int i){ if(elem[i] != -1) ...

weixin_33995481的博客 71

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)这种是...

a48634331的博客 184

【POJ2409】Let it Bead Pólya定理

【POJ2409】Let it Bead 题意:用$m$种颜色去染$n$个点的环,如果两个环在旋转或翻转后是相同的,则称这两个环是同构的。求不同构的环的个数。 $n,m$很小就是了。 题解:在旋转$i$次后,循环节的个数显然是$gcd(i,n)$。 如果考虑翻转,我们将点从$0$到$n-1$标号,令其先以0到圆心的连线为对称轴翻转,再旋转i次,则原来编号为x的会变成$n-x+i\mat...

aodanchui1057的博客 146

poj2154 & 2409 (polya计数)

poj2154:用n种颜色涂环形的n个珠子,重复只考虑旋转,不考虑翻转,问能构成多少种?(n&lt;=1e9) 自己写的有点丑就用别人推理的截图了 #include&lt;cstdio&gt; #include&lt;cstring&gt; using namespace std; const int MAXN=1000010; int prime[MAXN+5]; void getP...

XFire的博客 295

(Polya定理)poj2409 Let it Bead

传送门:poj2409 Let it Bead 这部分内容看了很久,还是不懂,,,区域赛过后再细细研究吧 详解1  详解2 详解3 #include&lt;iostream&gt; #include&lt;algorithm&gt; #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;cmath&gt; using name...

250

poj 1286 poj 2409 hdu 1812 polya定理 组合数学

http://www.cnblogs.com/yongze103/archive/2010/10/05/1842936.html

xiaoyu1_1的专栏 770
上一篇: hdoj1102
下一篇: poj3270
lulining
博客等级 码龄15年 8粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值