【题目链接】 http://poj.org/problem?id=1721

【题目大意】

  给出a[i]=a[a[i]]变换s次后的序列,求原序列

【题解】

  置换存在循环节,因此我们先求出循环节长度,置换后的序列经过len-s%len变换后就能得到原数列

【代码】

#include <cstdio>
const int N=1010;
int a[N],a1[N],a0[N],n,s;
void Getnxt(){for(int i=1;i<=n;i++)a0[i]=a1[a1[i]];for(int i=1;i<=n;i++)a1[i]=a0[i];
}
bool check(){for(int i=1;i<=n;i++)if(a1[i]!=a[i])return 0;return 1;
}
int main(){while(~scanf("%d%d",&n,&s)){for(int i=1;i<=n;i++)scanf("%d",&a[i]),a1[i]=a[i];int len=1; for(;;len++){Getnxt();if(check())break;}int u=len-s%len;for(int i=1;i<=u;i++)Getnxt();for(int i=1;i<=n;i++)printf("%d\n",a1[i]);}return 0;
}

  

转载于:https://www.cnblogs.com/forever97/p/poj1721.html

POJ 1721 CARDS(置换群)相关推荐

  1. POJ - 1026 Cipher(置换群的幂)

    题目链接:点击查看 题目大意:给出一个置换群,再给出数个字符串,每个字符串需要输出执行 k 次置换群后的答案 题目分析:置换群的 k 次幂,直接写就行了 代码: #include<iostrea ...

  2. 实用android 代码,Android 实用代码七段(一)

    前言 这里积累了一些不常见确又很实用的代码,每收集7条更新一次,希望能对大家有用. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http ...

  3. POJ的题目分类(两个版本)

    版本一: 简单题 1000A+B Problem 1001Exponentiation 1003 Hangover 1004 Financial Management 1005 I Think I N ...

  4. POJ前面的题目算法思路【转】

    1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 85% 2005-5-7 1002 487-3279 n/a 90% 2005-5- ...

  5. POJ 超详细分类

    POJ 各题算法 1000    A+B Problem            送分题     49%    2005-5-7 1001    Exponentiation         高精度   ...

  6. ajax怎样带值,ajax携带状态值

    linux下python调用c模块 在C调用Python模块时需要初始化Python解释器,导入模块等,但Python调用C模块却比较简单,下面还是以helloWorld.c 和 main.py 做一 ...

  7. 最短路算法详解(Dijkstra/SPFA/Floyd)

    转自:http://blog.csdn.net/murmured/article/details/19281031 一.Dijkstra Dijkstra单源最短路算法,即计算从起点出发到每个点的最短 ...

  8. J - Invitation Cards POJ - 1511

    J - Invitation Cards POJ - 1511 题意: 共有 n 个站点,n 个志愿者从1 出发,分别到达不同的站点,晚上全部回到 1 ,求他们总的最小花费是多少? 思路: 首先想到从 ...

  9. poj 3590 The shuffle Problem(置换群+DP)

    题目链接:poj 3590 The shuffle Problem 题意: 给你一个数n,让你找一个字典序最小的置换序列,使得变换整个周期最大. 题解: 由于置换群的性质,我们可以将n拆分成m个数,使 ...

最新文章

  1. C#调用C/C++ DLL的相关说明
  2. 基于Prometheus的.NET 4.x应用服务监控
  3. java rc2加密_急求java RC2加密算法
  4. 了解VS2005为你的MFC程序做的一些事
  5. 理解CNN中的特征图 feature map
  6. 同一个项目能上传至 多个GitHub账号或Gitee的仓库嘛?
  7. 一个完整的项目流程图_工程建设项目史上最完整的全流程图,必收藏备用!
  8. Spring – IoC 容器
  9. 常见的oracle面试题及答案,Oracle精选面试题(附答案及分析)
  10. [转]王垠的过去和现状
  11. MAC OS搭建pyhton+selenium+pycharm实现web自动化测试
  12. 【教3妹学java】JVM调优有哪些工具?
  13. XCTF攻防世界WEB新手区题目writeup
  14. 在本地写一个以市净率为因子的回测结果
  15. MTK android 修改背光自动调节亮度最大值和最小值
  16. 几百块的投影仪靠谱吗?性能怎么样?
  17. mysql redo 物理复制 彭立勋_MySQL基础技能与原理——基本原理.ppt
  18. mysql数据库交叉连接_MySQL交叉连接(CROSS JOIN)
  19. 安全认证框架Shiro (二)- shiro过滤器工作原理
  20. Word count通过mr实现China的编程

热门文章

  1. 阿里云支持超级账本最新版 其区块链解决方案进入商用阶段
  2. 《Power Designer系统分析与建模实战》——2.1 需求模型简介
  3. 5G:关键技术实现可引领
  4. C语言实现粒子群算法(PSO)一
  5. Pattern类与Matcher方法的验证
  6. 查找数据库大小和表大小
  7. 深入理解Android(三):Xposed详解
  8. 并发编程中的重重量级模型和轻量级模型
  9. [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField
  10. select每门可说大于90分_数据库原理与应用期末试题及其答案