zoukankan      html  css  js  c++  java
  • 1008 数组元素循环右移问题(20分) **

    #include <iostream>
    #include <cmath>
    using namespace std;
    
    int main()
    {
        int n,m;
        cin>>n>>m;
        int num[101];
        for(int i=0;i<n;i++)
            cin>>num[i];
        m = m%n;
        int count = 0;
        for(int i=n-m;i<n;i++)
        {
            cout<<num[i];
            count++;
            if(count==n)
                cout<<endl;
            else
                cout<<" ";
        }
        for(int i=0;i<n-m;i++)
        {
            cout<<num[i];
            count++;
            if(count==n)
                cout<<endl;
            else
                cout<<" ";
        }
        return 0;
    }

    直接改变输出顺序。

    #include <stdio.h>
    
    void reverse(int a[], int start, int end){
        for(int i=start; i<=(start+end)/2; i++){
            int tmp = a[i];
            a[i] = a[start+end-i];
            a[start+end-i] = tmp;
        }
    }
    
    int main(){
        int n, m;
        scanf("%d %d", &n, &m);
        m %= n;
        int a[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);
        printf("%d", a[0]);
        for(int i=1; i<n; i++){
            printf(" %d", a[i]);
        }
        printf("
    ");
        return 0;
    }

    严格的反转。

  • 相关阅读:
    AD7606笔记
    转Keil 中使用 STM32F4xx 硬件浮点单元
    旋转编码器
    PT100/PT1000
    电压跟随器
    段式液晶驱动方法
    物联网的架构
    物联网的操作系统
    C8051开发环境
    解决time命令输出信息的重定向问题
  • 原文地址:https://www.cnblogs.com/QRain/p/12218965.html
Copyright © 2011-2022 走看看