首页 > 其他分享 >1008 数组元素循环右移问题

1008 数组元素循环右移问题

时间:2023-05-08 22:23:10浏览次数:31  
标签:右移 int 整数 循环 数组 1008 输入

一、问题描述:

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

输入格式:

每个输入包含一个测试用例,第1行输入N(1≤N≤100)和M(≥0);第2行输入N个整数,之间用空格分隔。

输出格式:

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

     输入样例:

6 2
1 2 3 4 5 6

  输出样例:

5 6 1 2 3 4

  

二、代码实现:

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a[100];
 6     int n,m;
 7     int s;
 8     cin>>n>>m;
 9     for(int i=0;i<n;i++)
10     {
11         cin>>a[i];
12     }
13     for(int i=m;i>0;i--)
14     {
15         s=a[n-1];
16         for(int j=n-1;j>0;j--)
17         {
18             a[j]=a[j-1];
19         }
20         a[0]=s;
21     }
22     for(int i=0;i<n-1;i++)
23     {
24         cout<<a[i]<<" ";
25     }
26     cout<<a[n-1]<<endl;
27     return 0;
28 }

 

标签:右移,int,整数,循环,数组,1008,输入
From: https://www.cnblogs.com/tljx-cen/p/17383327.html

相关文章

  • Java数组
    Java数组Java中,数组是用来存储固定大小的同类型元素。声明数组变量声明语法:dataType[]arrayRefVar;//首选方法dataTypearrayRefVar[];//效果相同,但不是首选例:double[]myList;doublemyList[];创建数组语法:arrayRefVar=newdataType[arraySize];......
  • 数组中只出现一次的两个数字
    思路设两个数字分别为x,y将所有数字异或起来,得到的结果设为s,s=x^y因为相同两个数字,异或结果为0,由于异或运算满足交换律,因此最后就剩两个数字异或从s的二进制表示中,找到任意为1的位kxy的二进制表示在第k位上,一个是0,一个是1因为xy不同,因此s不为0,一定能......
  • 如何将数组生成可烧写bin文件
    ASM_CALLISTO_WAVE.bin烧写文件是由wave.bin+ curveTable.bin组成1、先使用工具C2B.exe将对应的TXT文件生成bin文件此工具是正点原子的工具,直接在它的网址下载即可txt文件格式为: 1{64,67,70,73,77} 按如下步骤即可在同文件夹得到同名bin文件 2、合并两个bin文件......
  • 数组声明、基本特点 数组边界
        ......
  • Java 三方接口PHP写法;doHmacSHA2; 将字节数组转换成16进制字符串;Mac.getInstance;Hma
    先看一段Java代码,一个签名过程1packagecom.sixents.bss.filter;234importorg.apache.http.HttpEntity;5importorg.apache.http.NameValuePair;6importorg.apache.http.client.entity.UrlEncodedFormEntity;7importorg.apache.http.client.met......
  • 为什么useState返回的是数组而不是对象?
    1.如果 useState 返回数组,那么可以顺便对数组中的变量命名,代码看起来也比较干净2.自定义hook的时候可以遵循一个简单原则:当参数大于2个的时候返回值的类型返回 object,否则返回数组。......
  • 数组
    一、声明数组declare-aARRAY_NAME#普通数组可以不事先声明,直接使用declare-AARRAY_NAME#关联数组必须先声明,再使用二、数组赋值1、一次只赋值一个元素weekdays[0]="Sunday"weekdays[4]="Thursday2、一次赋值全部元素ARRAY_NAME=("VAL1""VAL2""VAL3"...)范例:title=("ceo......
  • Arrays:点燃你的数组操作技巧的隐秘武器
    前言&emsp;&emsp;数组在Java中是一种常用的数据结构,用于存储和操作大量数据。但是在处理数组中的数据,可能会变得复杂和繁琐。Arrays是我们在处理数组时的一把利器。它提供了丰富的方法和功能,使得数组操作变得更加简单、高效和可靠。无论是排序、搜索、比较还是复制,Arrays都能够......
  • NOI / 1.8编程基础之多维数组
    13:图像模糊处理 1.描述给定n行m列的图像各像素点的灰度值,要求用如下方法对其进行模糊化处理:1.四周最外侧的像素点灰度值不变;2.中间各像素点新灰度值为该像素点及其上下左右相邻四个像素点原灰度值的平均(舍入到最接近的整数)。2.输入第一行包含两个整数n和m,表示图像包含......
  • 【C#】数组深拷贝
    数组是引用类型,元素保存在堆上,栈上保存的是地址。1.Buffer.BlockCopyint[]arrold=newint[100000];int[]arrnew=newint[100000];//foreach不能修改遍历集合的元素内容for(inti=0;i<arrold.Length;++i){arrold[i]=i;}Stopwatchsw=newStopwatch(......