zoukankan      html  css  js  c++  java
  • PAT (Basic Level) Practise (中文)- 1008. 数组元素循环右移问题 (20)

    一个数组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

    分析:实际不需移动,只要分为两部分输出即可。

     1 #include<stdio.h> 
     2 int main()
     3 {
     4     int num[100]={0};
     5     
     6     int n=0,m=0;
     7     scanf("%d%d",&n,&m);
     8     
     9     m%=n;
    10     for(int i=0;i<n;i++)
    11         scanf("%d",&num[i]);
    12     
    13     int k=0;
    14     for(int i=n-m;i<n;i++) 
    15     {
    16         if(k)
    17             printf(" ");
    18         else k++;
    19         printf("%d",num[i]);
    20     }
    21     for(int i=0;i<n-m;i++) 
    22     {
    23         if(k)
    24             printf(" ");
    25         else k++;
    26         printf("%d",num[i]);
    27     }
    28     return 0;
    29 }
  • 相关阅读:
    P1019 单词接龙
    最小生成树模板题POJ
    区间DP
    牛客多校第三场-A-PACM Team-多维背包的01变种
    洛谷P1004 方格取数-四维DP
    牛客多校第二场A run(基础DP)
    P1494 [国家集训队]小Z的袜子(莫队)
    洛谷:过河卒
    Codeforces Round #486 (Div. 3)-B. Substrings Sort
    判断的值是否为空
  • 原文地址:https://www.cnblogs.com/asinlzm/p/4463776.html
Copyright © 2011-2022 走看看