交换瓶子

这篇具有很好参考价值的文章主要介绍了交换瓶子。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

交换瓶子
贡献者:programmer_ada

有N个瓶子,编号 1 ~ N,放在架子上。
比如有5个瓶子:

2 1 3 5 4
要求每次拿起2个瓶子,交换它们的位置。
经过若干次后,使得瓶子的序号为:

1 2 3 4 5
对于这么简单的情况,显然,至少需要交换2次就可以复位。
如果瓶子更多呢?你可以通过编程来解决。
输入格式为两行:
第一行: 一个正整数N(N<10000), 表示瓶子的数目
第二行:N个正整数,用空格分开,表示瓶子目前的排列情况。
输出数据为一行一个正整数,表示至少交换多少次,才能完成排序。
例如,输入:

5 3 1 2 5 4

程序应该输出:

3

再例如,输入:

5 5 4 3 2 1

程序应该输出:

2文章来源地址https://www.toymoban.com/news/detail-405147.html

#include <bits/stdc++.h>
using namespace std;

int main()
{
	int a[10005],num,ans;
	cin>>num;
	for(int i=1;i<=num;i++)
	{
		cin>>a[i];
	}
	for(int i=1;i<=num;i++)
	{
		while(a[i]!=i)
		{
			swap(a[i],a[a[i]]);
			ans++;
		}
	}
	cout<<ans;
}

到了这里,关于交换瓶子的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 我成为开源贡献者的原因竟然是做MySql-CDC数据同步

    今年下半年机缘巧合下公司决定搭建自己的数据中台,中台的建设势必少不了数据集成。 首先面临的就是数据集成技术选型的问题 ,按照社区活跃度、数据源适配性、同步效率等要求对市面上几个成熟度较高的开源引擎进行了深度调研。 最终经过内部讨论决定用Apache SeaTu

    2024年01月24日
    浏览(49)
  • 交换瓶子

    交换瓶子 贡献者:programmer_ada 有N个瓶子,编号 1 ~ N,放在架子上。 比如有5个瓶子: 2 1 3 5 4 要求每次拿起2个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然,至少需要交换2次就可以复位。 如果瓶子更多呢?你可以通过编程

    2023年04月08日
    浏览(20)
  • 交换瓶子【第七届】【省赛】【A组】

    有N个瓶子,编号 1 ~ N,放在架子上。 比如有5个瓶子: 2 1 3 5 4 要求每次拿起2个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然,至少需要交换2次就可以复位。 如果瓶子更多呢?你可以通过编程来解决。 输入格式为两行:

    2024年02月22日
    浏览(37)
  • 蓝桥杯上岸每日N题 (交换瓶子)

    有 N 个瓶子,编号 1∼N,放在架子上。 比如有 5 个瓶子: 2 1 3 5 4 要求每次拿起 2 个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然,至少需要交换 2 次就可以复位。 如果瓶子更多呢?你可以通过编程来解决。 输入格式 第一

    2024年02月11日
    浏览(44)
  • 蓝桥杯专题-真题版含答案-【加法变乘法】【三羊献瑞】【交换瓶子】【卡片换位】

    点击跳转专栏=Unity3D特效百例 点击跳转专栏=案例项目实战源码 点击跳转专栏=游戏脚本-辅助自动化 点击跳转专栏=Android控件全解手册 点击跳转专栏=Scratch编程案例 点击跳转=软考全系列 点击跳转=蓝桥系列 专注于 Android/Unity 和各种游戏开发技巧,以及 各种资源分享 (网站、

    2024年02月16日
    浏览(45)
  • 曲面(弧面、柱面)展平(拉直)瓶子标签识别ocr

    瓶子或者柱面在做字符识别的时候由于变形,识别效果是很不好的 或者是检测瓶子表面缺陷的时候效果也没有展平的好 下面介绍两个项目,关于曲面(弧面、柱面)展平(拉直) 图1  如 图1所示,通过A、B、C、D、E、F六个点,对柱面展成平面,对应公式可参考下图(图2)

    2024年02月11日
    浏览(24)
  • 瓶子飞出来啦,裸眼3DLED显示屏

    瓶子飞出来啦,裸眼3DLED显示屏让你的眼前一亮。 随着LED显示屏的应用场景愈加丰富,受众对其的要求也逐步提高,人们的感官体验不再满足于普通的平面二维显示,而是渴望有着还原真实世界的三维立体观感,因此,有着身临其境之感的裸眼3D显示屏应运而生。 相较于传统

    2024年02月09日
    浏览(22)
  • 使用Python编程语言处理数据 (Processing data using Python programm

    作者:禅与计算机程序设计艺术 Python作为一种高级、开源、跨平台的编程语言,已经成为当今最流行的数据分析和机器学习工具。本文介绍了使用Python编程语言处理数据的一些基础知识,如列表、字典、集合、迭代器等,并对pandas、numpy、matplotlib、seaborn等数据分析库进行了

    2024年02月07日
    浏览(48)
  • 用VSCode玩STM32的烧录工具 CooCox Cortex Flash Programmer

    一、下载软件         经热心兄弟推荐的版本,不知道有没有版权,如有版权问题,请通知删除。         CSDN - 0积分下载:https://download.csdn.net/download/qq_49053936/88744187 二、生成bin文件         插件不同,方法有所不同,各施神通吧。         这里分享一下用keil生成

    2024年01月16日
    浏览(42)
  • Mantle: A Programmable Metadata Load Balancer for the Ceph File System——论文泛读

    SC 2015 Paper 元数据论文阅读汇总 优化Ceph的元数据局部性和负载平衡。 提高元数据服务性能的最常见技术是在专用的元数据服务器(MDS)节点之间平衡负载 [16, 25, 26, 21, 28]。常见的方法是鼓励独立增长并减少通信,使用诸如懒惰客户端和MDS同步 [16, 18, 29, 9, 30]、inode路径/权限

    2024年01月16日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包