UVA10294 Arif in Dhaka (First Love Part 2)】的更多相关文章

[Uva10294]Arif in Dhaka 标签: 置换 Burnside引理 题目链接 题意 有很多个珠子穿成环形首饰,手镯可以翻转和旋转,项链只能旋转.(翻转过的手镯相同,而项链不同) 有n个珠子,k种颜色,输出不同的项链和手镯的个数. 题解 先考虑旋转的置换: 假如旋转i颗珠子,那么显然产生的循环节个数为gcd(i,n),那么就可以做了. 考虑翻转的置换: 首先可以知道,如果先旋转再翻转,肯定可以找到某一种翻转的置换与之等价. 那么假如珠子的个数为奇数,可以得到(n/2)个长度为2的循…
题目链接:https://vjudge.net/problem/UVA-10294 题解: 白书P146~147. 为什么旋转i个间距,就有gcd(i,n)个循环,且每个循环有n/gcd(i,n)个元素? 证明: (gcd:最大公约数,lcm:最小公倍数) 将珠子从0到n-1标号,对于旋转i位的置换,在以0号为起点,长度为t的一个循环节中,元素标号为:0,i%n,(i*2)%n,…,(i*(t-1))%n 易知:(i*t)%n==0(循环大小为t,跳t次就回到初始点0),即 n*k == i*t…
UVA10294 Arif in Dhaka (群论,Polya定理) 题意 : 给你一个长为\(n\)的项链和手镯,每个珠子有\(m\)种颜色. 两个手镯定义为相同,即它们通过翻转和旋转得到一样的手镯. 两个项链定义为相同,即它们只能通过旋转得到一样的项链. 求出有多少种本质不同的项链和手镯. \((1 \le n \le 50, 1 \le m \le 10)\) 题解 : (参考了一下这篇大佬博客) 大白书上的原题,一个裸的Polya定理(逃 Polya定理 : \[L=\frac{1}{…
题意 PDF 分析 用n颗宝石串成项链和手镯, 每颗宝石的颜色可以t种颜色中的一种,当A类项链经过旋转得B类项链时,A和B属于一类项链, 而手镯不仅可以旋转还可以翻转,当A类手镯经过翻转得得到B类手镯时A和B属于一类手镯,问这n颗宝石,t种颜色,可以串成多少种项链和手镯? 解法: 首先将n颗宝石按顺时针方向编号1,2,3,4,5,6......n 旋转,当顺时针旋转i颗宝石时, 可以得到一个置换,且这个置换的个数为 (n*i)/gcd(n,i)/i ;由对称性可知 每个循环的阶均相同,故共有gc…
扯回正题,此题需要知道的是置换群的概念,这点在刘汝佳的书中写的比较详细,此处不多做赘述.此处多说一句的是第二种手镯的情况.在下图中“左图顺时针转1个位置”和“右图顺时针旋转5个位置”是相同的,所以在最终结果处需要(ans1+ans2)/2. 可以看刘汝佳白书,来看,这道题,burnside引理和polya定理的经典应用. #include<cstdio> #include<cstring> #include<cmath> #include<iostream>…
题目来源:UVa 10294 Arif in Dhaka (First Love Part 2) 题意:n颗珠子t种颜色 求有多少种项链和手镯 项链不可以翻转 手镯可以翻转 [分析] 要开始学置换了. 置换是什么呢?  置换的广义概念在不同语境下有不同的形式定义: 在集合论中,一个集合的置换是从该集合映至自身的双射:在有限集的情况,便与上述定义一致. 在组合数学中,置换一词的传统意义是一个有序序列,其中元素不重复,但可能有阙漏.例如1,2,4,3可以称为1,2,3,4,5,6的一个置换,但是其中…
Burnside定理:若一个着色方案s经过置换f后不变,称s为f的不动点,将置换f的不动点的数目记作C(f).等价类的数目等于所有C(f)的平均值. 一个项链,一个手镯,区别在于一个能翻转一个不能,用t种颜色染n颗珠子,求等价类的个数. 旋转置换群一共有n个置换,分别对应将项链整体逆时针旋转0个.1个.2个...珠子的置换. 对于第i个置换,第0个.i个.2i...个珠子构成一个循环,共有gcd(n, i)个循环,每个循环中有n / gcd(n, i)个珠子. 所以n个置换,每个置换的不动点有t…
Description 现有一颗含\(N\)个珠子的项链,每个珠子有\(t\)种不同的染色.现求在旋转置换下有多少种本质不同的项链,在旋转和翻转置换下有多少种本质不同的项链.\(N < 51,t < 11\) Input The input file contains several lines of input. Each line contains two positive integers \(N (0 < N < 51)\) and \(t (0 < t < 1…
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=35397 [思路] Polya定理. 旋转:循环节为gcd(i,n),i为偏移距离. 翻转:当n为偶数时,对称轴过点时循环节为n/2+1有n/2个,不过点时循环节为n/2有n/2个. 使用polya定理进行计数即可. [代码] #include<cstdio> using namespace std; typedef long long LL; +; LL pow…
这题和POJ-1286一样 题意: 给出t种颜色的n颗珠子 (每种颜色的珠子个数无限制,但总数必须是n), 求能制作出项链和手镯的个数 注意手镯可以翻转和旋转  而 项练只能旋转 解析: 注意Polya定理: 等价类的个数等于所有的置换f的km(f)的平均数 先考虑旋转,一共有n种情况,旋转1颗珠子构成循环,2颗,3颗·····n颗,那么对于旋转i颗珠子有gcd(i,n)个循环,那么根据Polya定理  置换的不动点的个数为 a = sum(tgcd(i, n)); 为什么又gcd(i, n)个…
题意:给定 n 和 m 表示要制作一个项链和手镯,项链和手镯的区别就是手镯旋转和翻转都是相同的,而项链旋转都是相同的,而翻转是不同的,问你使用 n 个珠子和 m 种颜色可以制作多少种项链和手镯. 析:一个很明显的 Polya 定理,先考虑旋转,如果逆时针旋转 i 个珠子,那么 0 i 2i 3i ... 是一个循环,这样的话就有 gcd(i, n) 个循环. 对于翻转,要考虑是奇偶,如果是奇数,肯定是要过一个珠子的,所以就一共有 n 个相同的,对于每一个会形成 n/2 个长度为 2 个的循环,和…
polya题目:uva 11077 Find the Permutationsuva 10294 Arif in DhakaLA 3641 Leonardo's Notebookuva 11077 Find the PermutationsHOJ 2084 The Colored CubesHOJ 2647 Megaminx POJ 1286 Necklace of BeadsPOJ 2409 Let it BeadTOJ 2795 The Queen's New NecklacesHDU 18…
Arif in Dhaka(First Love Part 2) Input: standard input Output: standard output Time Limit: 2 seconds Our hero Arif is now in Dhaka (Look at problem 10244 – First Love if you want to know more about Arif, but that information is not necessary for this…
2012 Dhaka B - Wedding of Sultan 题目描述:给出一棵树的\(dfs\)序(只要经过就会记录),求每个点的度 solution 按\(dfs\)序的规则还原这棵树就好了. 时间复杂度:\(O(n)\) C - Memory Overflow solution 模拟 D - Laptop Chargers 题目描述:有\(n\)台电脑,每台电脑的电量,电容量,功耗都可能不同,现在有功率相同的充电器若干个,问最少需要多少个充电器,以及只给一定数量的充电器时,最早没电的电…
2015 Dhaka A - Automatic Cheater Detection solution 模拟计数. B - Counting Weekend Days solution 模拟计数. C - Toll Management IV 题目描述:有一个\(n\)个点\(m\)条边的图,每条边有权值,现在给出图中一棵合法的最小生成树,问每条边权值最多增加多少,最多减少多少,使得给出的最小生成树还是最小生成树. solution 对于给定的最小生成树,最多减少多少无界,对于其它的边,最多增加…
不同的枚举方法,效率完全不同.值得记录一下! #include <cstdio> #include <cstring> , count = ; ]; void pre() { count = ; memset(cnt, , sizeof(cnt)); ; a <= ; a++) { ; c < a; c++) { && ((a-c)^a)==c) { count++; } } cnt[a-] = count; } } int main(void) { f…
水 B Wedding of Sultan 题意:求每个点的度数 分析:可以在,每个字母的的两个端点里求出的的出度,那么除了起点外其他点还有一个入度,再+1 /************************************************ * Author :Running_Time * Created Time :2015/11/4 星期三 13:22:03 * File Name :B.cpp ****************************************…
B .Counting Inversion 题意:给定L,R,求这个区间的逆序对数之和.(L,R<1e15) 思路:一看这个范围就知道是数位DP. 只是维护的东西稍微多一点,需要记录后面的各种数字的个数cnt,以及逆序对和sum,以及出现了多少种后缀num. 那么枚举到当前位时,假设为i ,那么sum+=cnt[i+1]+cnt[i+2]+....cnt[9];  cnt[i]+=num; 可以参考CF1073E. #include<bits/stdc++.h> #define rep(…
Big Number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 40782    Accepted Submission(s): 19958 Problem Description In many applications very large integers numbers are required. Some of thes…
A.uva 12709 Falling ANTS 首先按照H排序,然后按照L*H*W排序 #include<iostream> #include<cstdio> #include <math.h> #include<algorithm> #include<string.h> #define maxn 100009 #define inf 100000 using namespace std; int main() { int n,a,b,c; )…
B: Uva: 12582 - Wedding of Sultan 给定一个字符串(仅由大写字母构成)一个字母表示一个地点,经过这个点或离开这个点都输出这个地点的字母) 问: 每一个地点经过的次数(维护一个栈就能够了,注意进入起点和离开起点都不算入起点的次数) #include<cstdio> #include<cstring> #include<stack> #include<iostream> #include<algorithm> usin…
目录 Contest Info Solutions B. Counting Inversion C. Divisors of the Divisors of An Integer E. Helping the HR F. Path Intersection G. Techland H. Tile Game J. VAT Man Contest Info Practice Link Solved A B C D E F G H I J 7/10 - O O - O O O Ø - O O 在比赛中…
题意:求\(n!\)的每个因子的因子数. 题解:我们可以对\(n!\)进行质因数分解,这里可以直接用推论快速求出:https://5ab-juruo.blog.luogu.org/solution-p2043, 所以我们可以得到\(n!=p^{k1}_1*p^{k_2}_2*...*p^{k_n}_n\),然后根据约数定理,它的任意一个因子可以表示为\(n!=p^{a1}_1*p^{a_2}_2*...*p^{a_n}_n\ (0\le a_i\le k_i)\),我们将某一个质数\(p^{a_…
题意:       给你一串珠子(连接成了一个环),共有n个珠子组成,你有t种颜色,现在你来给这个珠子染色,问染成项链有多少种方法?染成手镯有多少种方法?在项链里,经过顺时针旋转后相同的算一个,在手镯里,经过顺时针旋转或者沿着对称轴兑换后一样的算一个. 思路:       比较典型的等价类计数问题,我们定义两个变量,a是旋转的总个数,b是翻转的总个数,那么根据Burnside和Polya定理,a = C[0] + C[1] + C[2] +..+C[n-1]; C[i]表示的是顺时针移动i个后的…
strcmp() Anyone? Time Limit: 2000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu [Submit]   [Go Back]   [Status] Description   J “strcmp()” Anyone? Input: Standard Input Output: Standard Output strcmp() is a library function in C/C++ which…
###与时间有关的5个包* java.time* java.time.chrono* java.time.format* java.time.temporal* java.time.zone###java.time下的类* Clock* Duration* Instant* LocalDate* LocalDateTime* LocalTime* MonthDay* OffsetDateTime* OffsetTime* Period* Year* YearMonth* ZonedDateTim…
Air Raid Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4959    Accepted Submission(s): 3339 Problem Description Consider a town where all the streets are one-way and each street leads from one…
Find The Multiple Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 28550   Accepted: 11828   Special Judge Description Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal representation contains…
Find The Multiple Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 27433   Accepted: 11408   Special Judge Description Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal representation contains…
<timezones>    <timezone id="Pacific/Majuro">马朱罗</timezone>    <timezone id="Pacific/Midway">中途岛</timezone>    <timezone id="Pacific/Honolulu">檀香山</timezone>    <timezone id="…