首页 > Just Shuffle
头像 ryougi_
发表于 2020-07-14 20:38:44
初始序列1,2,3,4,5...设为a,有一个置换p,a置换k次后成了b;题目给了b,k,求a置换一次的结果;对于b可以求出一些循环节,长度设为r,设一个数z,使得zk%r==1;即a转zk次后为1;即是答案;z可以用逆元也可以直接试,不超过r;.#include <bits/stdc++.h 展开全文
头像 TitanZhang
发表于 2020-07-15 15:48:35
题目大意 给一个长度为n的排列A={1,2,3,...,n}以及置换的次数k,在对A使用k次置换P后得到新的排列B。(整理:A是原排列,P是置换,B是目标排列,k是次数) 输入n,k和B,输出A,如果无解输出-1。(规定k是大质数,108≤k≤109,说明K一定存在逆元,不会出现无解的情 展开全文