PAT Basic 1008. 数组元素循环右移问题 (20)

2023-11-09

一个数组A中存有N(N>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A0A1……AN-1)变换为(AN-M …… AN-1 A0 A1……AN-M-1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?

输入格式:每个输入包含一个测试用例,第1行输入N ( 1<=N<=100)、M(M>=0);第2行输入N个整数,之间用空格分隔。

输出格式:在一行中输出循环右移M位以后的整数序列,之间用空格分隔,序列结尾不能有多余空格。

输入样例:
6 2
1 2 3 4 5 6
输出样例:
5 6 1 2 3 4
#include <stdio.h>
int a[100];
void reverse(int *a, int m, int n){
	for (int i = m; i <= (m + n) / 2; i++){
		int tmp = a[i];
		a[i] = a[m + n - i];
		a[m + n - i] = tmp;
	}
}

int main(){
	int n, m;
	scanf("%d%d", &n, &m);
	m %= n;
	for (int i = 0; i < n; i++)
		scanf("%d", &a[i]);
	reverse(a, 0, n-m-1);
	reverse(a, n-m, n-1);
	reverse(a, 0, n-1);
	for (int i = 0; i < n; i++)
		printf("%d%s", a[i], (i-n+1?" ":"\n"));
	return 0;
}



                
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PAT Basic 1008. 数组元素循环右移问题 (20) 的相关文章

  • VS code怎么终止正在运行的文件

    很简单 第一种方法 简单 快捷 Shift F5 第二种方法 1 第一步 点击最左侧运行和调试按钮后程序会开始运行 2 可以看到左侧调用堆栈 将鼠标放在下面类目 正在运行处 会出现 停止 按钮 点击即可
  • CSS3_03:各种卡券优惠券模板制作,开箱即用,学得会,用得着

    本文首发于微信公众号 布依前端 微信号 qny 1009 转载请注明出处 原创不易 觉得有用的话 多转发点赞支持 作为前端开发者 经常碰到不规则元素需求 尤其是购物类的优惠券 元素长相怪异 没有接触过就会犯懵 见多识广 会者不难 安利一波这
  • 网页在线视频下载教程(m3u8格式介绍及下载教程)

    简介 m3u8文件是苹果公司使用的HTTP Live Streaming HLS 协议格式的基础 HLS是新一代流媒体传输协议 其基本实现原理为将一个大的媒体文件进行分片 将该分片文件资源路径记录与m3u8文件 即playlist 内 其中
  • android studio Flutter开发好用的插件

    Dart 必备 Flutter 必备 Flutter Enhancement Suite Flutter代码增强提示 WidgetGenerator 自动生成Widget接口 flutter img sync 自动同步照片路径
  • Hibernate 超简单的一对多和多对一查询

    这里使用的Teacher类和Student类 假设一个Teacher对应多个学生 一个学生对应一个老师 所需jar包 开始建表 1 表名 teacher 2 表名 student 主键都为自增长 创建实体类 Teacher类 package
  • 论文阅读——Temporal Convolutional Attention-based Network For Sequence Modeling

    https arxiv org pdf 2002 12530 pdf 代码 https github com haohy TCAN 用于序列建模的基于注意力的时序卷积网络 作者提出一种时序卷积注意力网络 Temporal Convoluti
  • shell 遍历当前目录以及所有子目录下文件

    bin bash file count 0 folder count 0 function TRAVEL ALL FILE for file in do if f file then normal file echo file file c
  • 干货分享

    如今 随着诸如互联网以及物联网等技术的不断发展 越来越多的数据被生产出来 据统计 每天大约有超过2 5亿亿字节的各种各样数据产生 这些数据需要被存储起来并且能够被方便的分析和利用 随着大数据技术的不断更新和迭代 数据管理工具得到了飞速的发展
  • OpenGL学习——(3)库函数

    1 定义视口 void ChangeSize int w int h glViewport 0 0 w h 代表窗口中视口的左下角坐标是 0 0 通常都是0 0 w和h用像素表示 在窗口改变大小时接收新的宽和高 glViewport主要完成
  • 实战:NodeLocal DNSCache安装-2023.2.23(测试成功)

    实战 NodeLocal DNSCache安装 2023 2 24 测试成功 目录 文章目录 实战 NodeLocal DNSCache安装 2023 2 24 测试成功 目录 本节实战 实验环境 实验软件 0 部署前dns测试 1 获取资
  • Brew的安装路径

    Homebrew 将本机的 usr local 目录初始化为Git的工作树 并将目录所有者变更为 USER 也就是你当前所操作的用户 所以以后的操作都不再需要sudo 这是安全的 全新的OS X默认是没有该目录的 也就是说该目录并非是系统所
  • 图形界面操作pandas:计算变异系数(极差 四分位差 方差 标准差 协方差 变异系数)

    昨天 freepy增加了计算离散程度功能 包括极差 四分位差 方差 标准差 协方差 变异系数 其中 协方差需要指定两个字段 部分运行结果 df apple stock Open 极差 691 29 df apple stock High 四
  • sklearn中fit_transform,transform和fit函数的区别和作用详解

    写在前面 fit和transform没有任何关系 仅仅是数据处理的两个不同环节 之所以出来fit transform这个函数名 仅仅是为了写代码方便 会高效一点 sklearn里的封装好的各种算法使用前都要fit fit相对于整个代码而言
  • 简单使用iPhone自带视频播放器

    利用苹果自带的视频播放器播放视频 在调用方法前 我们需要包含头文件 import
  • 生成测试数据神器:使用python的faker库

    一 faker是啥 Faker是一个Python包 开源的GITHUB项目 主要用来生成大量的伪数据 使用Faker包 无需再手动生成或者手写随机数来生成数据 只需要调用Faker提供的方法 即可完成数据的生成 二 Faker的使用 引用包
  • electron --unsafely-treat-insecure-origin-as-secure 问题解决 navigator.mediaDevices = undefined

    问题原因 由于electron mainWindow loadURL http 127 0 0 1 访问是已http协议 而chrome浏览器在访问http请求时考虑隐私安全是无法打开许多Web API的 如 navigator media
  • 求字符串可匹配的最大长度

    如 text abcdlijkfgd query abcdefg 最大匹配为 abcd 为4 编写一个函数 求字符串可匹配的最大长度 如果是完全匹配 则用很多种方法 如BF KMP sunday等字符串匹配算法 KMP是比较常见的 其思想也
  • 软件项目管理的成功法则

    1 平衡原则 在我们讨论软件项目为什么会失败时可以列出了很多的原因 答案有很多 如管理问题 技术问题 人员问题等等 但是有一个根本的思想问题是最容易忽视的 也是软件系统的用户 软件开发商 销售代理商最不想正视的 那就是 需求 资源 工期 质
  • Jmeter之响应断言

    断言有很多种 最最最常用的一种就是响应断言 目前我也只接触过这么一种 详情 Main sample and sub samples 断言应用于主采样器和子采样器 Main sample only 断言仅应用于主采样器 Sub samples
  • 排序算法的稳定与不稳定

    稳定的排序算法 通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同 在简单形式化一下 如果Ai Aj Ai原来在位置前 排序后Ai还是要在Aj位置前 没错 其实就是有两个排序关键字的时候 稳定排序可

随机推荐

  • 2023华为OD机试真题-数字加减游戏(JAVA、Python、C++)

    题目描述 小明在玩一个数字加减游戏 只使用加法或者减法 将一个数字s变成数字t 每个回合 小明可以用当前的数字加上或减去一个数字 现在有两种数字可以用来加减 分别为 其中b没有使用次数限制 请问小明最少可以用多少次a 才能将数字s变成数字t
  • 我所不知道的TCP Socket编程(五)-交换数据、套接字读写操作

    五 交换数据 已经建立了服务器和客户端的链接 现在需要让它们进行数据交换 你可以将TCP连接想象成一串连接了本地套接字和远程套接字的管子 我们可以沿着这个管子发送和接受数据 实际中 数据被编码为TCP IP分组 经过多台路由器和主机 抵达终
  • 使用YOLOv5模型进行目标检测!

    点击上方 小白学视觉 选择加 星标 或 置顶 重磅干货 第一时间送达 目标检测是计算机视觉领域的一大任务 大致分为一阶段目标检测与两阶段目标检测 其中一阶段目标检测模型以YOLO系列为代表 最新的YOLOv5在各个数据集上体现出收敛速度快
  • 实现Excel的导入、导出

    实现Excel的导入 导出 关于excel的操作在工作中经常会遇到 如果只是一次性使用的话 最简单的方式就是通过数据库的可视化工具 如Navicat 查询结果集之后直接一键生成excel了 当然这只能解燃眉之急 并不是长久之计 首先Exce
  • PAT C入门题目-7-12 日期格式化 (5 分)

    7 12 日期格式化 5 分 世界上不同国家有不同的写日期的习惯 比如美国人习惯写成 月 日 年 而中国人习惯写成 年 月 日 下面请你写个程序 自动把读入的美国格式的日期改写成中国习惯的日期 输入格式 输入在一行中按照 mm dd yyy
  • 小车+摄像头 +ros+gazebo+yolo仿真

    一 项目代码下载 https blog csdn net WhiffeYF article details 109187804 下载到 catkin ws2 src 中 这几个文件 其中 darknet ros 用于yolo的目标检测 mr
  • 【关于PyCharm安装和加载Pyecharts可视化库的方法和安装过程中出现的No Module Named XXX的解决方案】

    作者 亮马桥胡歌Wechat changxu1129 Echarts 是百度开源的一个数据可视化 JS 库 主要用于数据可视化 点击访问Echarts官网 http echarts baidu com index html 点此直接访问Py
  • Telink 825x 蓝牙开发笔记1

    Telink 825x 蓝牙开发笔记1 背景 美国贸易战导致芯片等模组价格上涨 为了以后长期发展需要研究国产蓝牙 Telink 一 环境搭建 1 软件下载 IDE Telink IDE 1 3 量产工具 Telink BDT exe v5
  • robots.txt 如何禁止蜘蛛(百度,360,搜狗,谷歌)搜索引擎获取页面内容

    什么是蜘蛛抓取 搜索引擎使用spider程序自动访问互联网上的网页并获取网页信息 spider在访问一个网站时 会首先会检查该网站的根域下是否有一个叫做robots txt的纯文本文件 您可以在您的网站中创建一个纯文本文件robots tx
  • 二十一. Kubernetes 配置的创建与使用

    目录 一 配置基础 二 Secret 配置介绍与使用示例 Secret 的创建 Secret 的使用 1 pod env 中作为环境变量获取使用 Secret 2 以卷挂载的方式使用 Secret 三 ConfigMap 介绍与使用示例 C
  • 卷积神经网络「失陷」,CoordConv来填坑

    卷积神经网络 失陷 CoordConv来填坑 作者 Rosanne Liu等 卷积神经网络拥有权重共享 局部连接和平移等变性等非常优秀的属性 使其在多种视觉任务上取得了极大成功 但在涉及坐标建模的任务上 如目标检测 图像生成等 其优势反而成
  • Qt实现基于多线程的文件传输(服务端,客户端)

    1 效果 先看看效果图 这是传输文件完成的界面 客户端 服务端 2 知识准备 其实文件传输和聊天室十分相似 只不过一个传输的是文字 一个传输的是文件 而这方面的知识 我已经在前面的博客写过了 不了解的同学可以去看一下 C 网络编程 Qt实现
  • excel文件服务器未响应,excel打不开文件未响应怎么处理-处理excel无法打开文件未响应的方法 - 河东软件园...

    Excel是office组件中的一个 经常跟数据打交道的用户每天都会接触到它 有的时候我们在打开该软件的时候都会出现无法导入文件的情况 无论你使用的是哪个版本的office软件都会在打开文件的时候发现软件没有响应 一般出现这样的情况都会在左
  • C++入门(一)----Visual C++ 6.0和Visual Studio 2019 的安装与使用

    Visual C 6 0的安装与使用 下载 安装 https blog csdn net weixin 41822392 article details 89519036 使用 https blog csdn net yiminghd286
  • 策略模式(Strategy)

    一 策略模式定义 定义一系列算法 把他们封装起来 并且他们可以相互替换 本模式使得算法可独立于使用他的客户而变化 二 策略模式结构说明 1 Strategy 策略接口 用来约束一系列具体的策略算法 Context使用这个接口来调用具体的策略
  • 开发人 学习资源

    非常优秀的资源 请珍惜 基础 游戏编程高级进阶书籍推荐 http www douban com doulist 522861 Amit游戏编程 http www cs students stanford edu amitp gameprog
  • Leetcode 刷题笔记(四) —— 数组类型解题方法四:模拟

    文章目录 系列文章目录 模拟 54 螺旋矩阵 59 螺旋矩阵 II 总结 系列文章目录 一 数组类型解题方法一 二分法 二 数组类型解题方法二 双指针法 三 数组类型解题方法三 滑动窗口 四 数组类型解题方法四 模拟 五 链表篇之链表的基础
  • pycharm中导入rospy包

    在pycharm中 问题描述 import rospy 显示有错误 在终端中import rospy 能通过 这种问题说明rospy已经安装成功 但是没有导入到pycharm中 解决办法 1 依次点击File gt settings gt
  • qt学习笔记11:QFile文件读写操作、QFileInfo文件信息提取

    QFile文件读写操作 需求 实现一个可以选择文件的对话框 在ui中 分别line edit push button 在widget中水平对齐 再整体和一个TextEdit对齐 界面上就得到一个大概的选取文件的窗口 点击选取文件窗口 左边会
  • PAT Basic 1008. 数组元素循环右移问题 (20)

    一个数组A中存有N N gt 0 个整数 在不允许使用另外数组的前提下 将每个整数循环向右移M M gt 0 个位置 即将A中的数据由 A0A1 AN 1 变换为 AN M AN 1 A0 A1 AN M 1 最后M个数循环移至最前面的M个