hdu5399】的更多相关文章

题意:给你m行个长度为 n的序列或者-1 -1代表这一行的序列不确定,然后让你找出有多少种情况满足对于每一个i 有f1(f2(⋯fm(i)))=i: 思路:分为三种情况:1,每行序列中有反复数输出0:2,存在-1的话一定有解且答案为n的阶乘的(-1的个数-1)次方:3.以上两种都不是的,推断一下可不能够,0 or 1 代码: #include <algorithm> #include <iostream> #include <sstream> #include <…
题意:m个{1,2...n}→{1,2...,n}的函数,有些已知有些未知,求对任意i∈{1,2,...,n},f1(f2(...(fm(i)))=i的方案总数,为了方便简记为F(i) 思路:如果存在一个f,当i!=j时,有f(i)=f(j),那么方案数为0,因为由里到外进行f运算,两个不同的数到这里来了变成了i和j,然后变成了同一个数,最终还是等于同一个数,所以在最外面至少有一个不会满足F(x)=x.如果f全部确定了,那么只需对每个i计算一下F(i)即可确定答案.如果f没确定的个数为cnt,则…