题目描述
Kayaking is playing a puzzle game containing n different blocks. He marks the blocks with integers from 1 to n, which show the blocks’ original positions. Each time he can exchange two blocks and he wants to know how many times he needs at least to restore the puzzle.
输入
The input starts with one line contains exactly one positive integer T which is the number of test cases.
Each test case contains two lines.
The first line contains an integer, which indicates the number of puzzle pieces.
The second line contains n different integers, the i-th number means the mark of the block in the i-th position.
输出
For each test case, output one line with one number represents the minimum operations.
样例输入
2
4
2 3 4 1
4
2 1 4 3
样例输出
3
2
题目大意
从1到n一共n个数,排序,每次操作就是把两个数倒个个,求最少操作次数,使得排序为从1到n。

代码:

#include<bits/stdc++.h>
using namespace std;typedef long long ll;
int main()
{int t;scanf("%d",&t);while(t--){int n;scanf("%d",&n);int a[100010];int vis[100010]={0};for(int i=1;i<=n;i++){scanf("%d",&a[i]);}int res=0;for(int i=1;i<=n;i++){int tmp=a[i],count=0;while(!vis[tmp]){vis[tmp]=1;tmp=a[tmp];cnt++;}if(count>0)res+=(count-1);}printf("%d\n",res);}return 0;
}

哈尔滨学院Day2--A The Puzzle相关推荐

  1. 学会在Unity中创建一个Match-3益智游戏 Learn To Create a Match-3 Puzzle Game in Unity

    MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语言:英语+中英文字幕(根据原英文字幕机译更准确) |时长:48场讲座(6h 38m) |大小解压后:2.8 G ...

  2. Day2 - Python基础2作业【文件操作--购物车程序(用户操作及商户操作)】

    1 # ----user.txt---- 2 3 {'已购商品': '', '消费记录': '', '余额': 0} 4 5 6 # ----commodity.txt---- 7 8 iPhone, ...

  3. 【JAVA零基础入门系列】Day2 Java集成开发环境IDEA

    [JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...

  4. 【杭电ACM】1097 A hard puzzle

    [杭电ACM]1097  A hard puzzle http://acm.hdu.edu.cn/showproblem.php?pid=1097 先用int手写了算法结果竟然wrong answer ...

  5. Eight puzzle --HOJ 11918

    1.题目类型:模拟.哈希表.BFS. 2.解题思路:(1)模拟Eigh Puzzle的变换方式,并记录在数组中 :(2)由于变换的最终结果相同,所以采用反向的BFS遍历所有情况,并记录所有情况:(3) ...

  6. Alpha冲刺Day2

    冲刺Day2 一.站立式会议计划 分组讨论研究:较好的掌握MYSQL的使用,以及Android Studio图形化界面设计的学习同步进行. 完成设计数据库架构,进阶版. 登录.注册界面的设计. 能从同 ...

  7. 补第四周作业总结——8 puzzle

    8 puzzle已经提供了解决思路,早期的人工智能算法A.我只能感觉它的神奇,但是没法创造性地使用它.只能按部就班地完成这周的作业. 难点在于对过程的不理解.这个33的格子搜索算法没有尽头,随着步数的 ...

  8. ZJOI2019 Day2 游记

    emmm,一直没有更新不是因为退役了自闭什么的,只是单纯比较懒.写游记很累的. 这次余姚之旅中我似乎并没有怎样焦急和兴奋,回想起来,我甚至比一试时要平静得多. 是因为挫折让人有些长大了吗? 二试讲课时 ...

  9. UVA227 Puzzle

    问题链接:UVA227 Puzzle.基础训练级的问题,用C语言编写程序. 问题简述:一个5×5的网格,一个格子是空的,其他格子各有一个字母,一共有四种指令:A,B,L,R,分别表示把空格上.下.左. ...

  10. UVa10639 Square Puzzle(WA)

    例子通过了,并且udebug上的例子也通过了,但是提交还是错误. 针对特殊情况: 3 4 7 0 2 1 2 2 3 3 2 4 2 4 4 0 4 7 0 0 4 0 4 2 3 2 2 1 1 2 ...

最新文章

  1. 好礼相送|CSDN云原生 Meetup 成都站报名热烈启动,12.18见!
  2. “鸟枪换炮”,nanopore测序在宏基因组中的应用
  3. 工作中系统报错:数据库连接失败怎么办?
  4. bigquery按照小时来聚合数据
  5. 使用 Carla 和 Python 的自动驾驶汽车第 4 部分 —— 强化学习Action
  6. java统计报表日期工具类
  7. 人生中最【无用】的二十件事
  8. java九种数据类型以及封装类
  9. 网站对战服务器,PVP核心精华:三大服务器对战
  10. Android中Fragment生命周期和基本用法
  11. 2d isometric 坐标变换
  12. html 抽签分小组代码,JavaScript实现班级抽签小程序
  13. 给老年人“种草”,是不是一门好生意?
  14. 公开课笔记 | 从0到1搭建数据运营体系
  15. 模式识别与机器学习(作业5)基于PCA–LDA的人脸识别
  16. Python 税额计算器
  17. 机器学习(回归八)——Softmax回归
  18. 从零开始学习Java神经网络、自然语言处理和语音识别,附详解和简易版GPT,语音识别完整代码示例解析
  19. django基于python的图书馆管理系统--python-计算机毕业设计
  20. 永磁直流无刷电机设计之路(一)——概述

热门文章

  1. 模板库(七) - 字符串算法
  2. WPF 鼠标光标大全
  3. 信链可信存证平台CCDP
  4. 计算机桌面应用程序图标不见了怎么办,桌面程序图标不见了,桌面软件快捷方式不见了怎么办?...
  5. 将docx转为pdf文档
  6. Ubuntu系统查询本地IP
  7. 【毕设记录日记】深度学习|铝型材表面缺陷视觉检测算法:YOLOv5环境搭建、基础知识、问题解决、优化方法
  8. AVS3中的intra string copy(ISC)
  9. java图片压缩、图片缩放
  10. Chris Cheung