组合数学 (Fall 2017)/Problem Set 2

From EtoneWiki
Jump to: navigation, search

Problem 1

你要设计一个标志,以下形状中的12条线段可以分别又红、绿、蓝三色之一构成。要求考虑这个形状的“转动”和“反转”两种对称。

    __
 __|  |__
|__    __|
   |__|
  • 定义这个对称构成的群,可以通过生成元定义,也可以直接把元素都写出来;
  • 写出cycle index;
  • 如果要求三种颜色出现的次数一样多,写出这时的pattern inventory;
  • 如果有四种颜色红、绿、蓝、黄,并要求四种颜色出现的次数一样多,写出这时的pattern inventory;

整个过程中可以借助一些数学软件如Mathematica的帮助。

Problem 2

考虑颗、共种宝石构成的项链。假设整除,我们考虑所有整数倍步数的转动。对于一个pattern ,令为在该对称下、具有这一pattern(第种宝石恰好个,)的项链种类。

设计一个算法。输入一组以及一个pattern ,输出

给出你算法使用的permutation group的数学上的定义与构造。给出算法的源代码(鼓励使用Mathematica或者Matlab软件的语言和函数,否则请使用C/C++/Java/Python等通用高级编程语言或脚本语言),并为每一段源代码给出功能上的注释和数学上的严格定义。

选择至少两组输入的,给出算法输出的值和算法自动生成的pattern inventory。注意输入规模的选择不能小到手动运算都能计算出答案。

Problem 3

在筛法的讲义中关于"Permutations with restricted positions"的部分,关键性定理

.

的证明过程中,需建立如下等式:

.

再讲义的证明中,我们只是用一句"because we can count both sides by first placing non-attacking rooks on and placing additional non-attacking rooks on in ways" 来说明其成立,然而这样的“说理”并不是一个严格的数学证明。

  • 请对上面这个等式给出严格的数学证明。

Problem 4

假设我们班上有n+2个人,其中两个人是DNA完全相同的双胞胎。我们收上n+2份作业后,将这些作业打乱后发回给全班同学,每人一份。要求每个人不可以收到自己那一份作业或者与自己DNA相同的人的作业。令表示满足这个要求的发回作业的方式,问:

  • 计算是多少;
  • 时,随机重排并发回作业后,满足上述要求的概率是多少。

Problem 5

Let be a permutation of . Recall that a cycle of permutation of length is a tuple such that and . Thus a fixed point of is just a cycle of length 1.

  • Fix . Let be the number of permutations of having no cycle of length . Compute this and the limit .

Problem 6

Give a dynamical programming algorithm that given as input a bipartite graph where , returns the number of perfect matchings in within time .