codeforces 698F

Posted foreverpiano

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了codeforces 698F相关的知识,希望对你有一定的参考价值。

http://codeforces.com/contest/698/problem/F

给定一个长度为(n)的排列(p),有些位置已经填了数字,让你填上剩余的数字

问存在多少的排列满足

若存在(forall 1le i<jle n ; i perp j) 当且仅当 (p_i perp p_j)

首先糊结论

对于排列都没有确定的情况

  1. 如果存在下标(i)(j)满足(i)(j)的质因子种类相同,那么可以swap(i, j)
  2. 如果存在两个质数(a)(b),他们在排列出现次数相同,那么可以swap({1 a, 2 a, ..., k * a}, {1 * b, 2 * b, ..., k * b})

然后如果有确定的数的话

可以发现对于位置(i)(p_i)他们的质因子是一个双射的关系

便于处理可以将(1)看成质数

(做过的题又不会做来补发题解qwq

以上是关于codeforces 698F的主要内容,如果未能解决你的问题,请参考以下文章

CodeForces 698A Vacations

●CodeForces 698C LRU

CodeForces 698A Vacations

Codeforces 698A - Vacations - [简单DP]

codeforces 698B Fix a Tree

codeforces 698b 图论