pat(basiclevel)practice1008数组元素循环右移问题(代码片段)

jaminlin jaminlin     2022-12-25     356

关键词:

个人练习


 

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

输入格式:

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

输出格式:

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


 

输入样例:

6 2
1 2 3 4 5 6

输出样例:

5 6 1 2 3 4

思路:根据间隔分成两段打印。

#include <stdio.h>

int main () 
    int n,m;
    int arr[100];  
    scanf("%d%d", &n, &m);
    m = m % n; 
    for (int i=1; i<=n; i++)
    
        scanf("%d", &arr[i]);
    
    for (int i=n-m+1; i<=n; i++)
    
        printf("%d ", arr[i]);
    
    for (int i=1; i<=n-m; i++)
    
        printf("%d", arr[i]);
        if (i == (n - m))
        
            printf("
");
            break;
        
        printf(" ");
    
    return 0;

 

 



pat(basiclevel)practice1021个位数统计(代码片段)

个人练习 给定一个 k 位整数 N=d?k?1??10?k?1??+?+d?1??10?1??+d?0?? (0≤d?i??≤9, i=0,?,k?1, d?k?1??>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有2个0,3个1,和1个3。输入格式:... 查看详情

pat(basiclevel)practice1004成绩排名(代码片段)

个人练习 读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。 输入格式:每个测试输入包含1个测试用例,格式为第1行:正整数n第2行:第1个学生的姓名学号成绩第3行:第2个学生的姓名... 查看详情

(python)pat(basiclevel)practice刷题笔记(34-66)(代码片段)

我的代码仅能解题,效率不高也不够简洁,欢迎师傅们提出建议,能让我加以改进。Practice1036跟奥巴马一起编程(15分)1037在霍格沃茨找零钱(20分)1038统计同成绩学生(20分)1039到底买不买(20分)1041考试座位号(15分)1042字符... 查看详情

pat(basiclevel)practice(中文)1023组个最小数(20分)(排序)(代码片段)

给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编... 查看详情

pat(basiclevel)practice1032挖掘机技术哪家强(代码片段)

个人练习 为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第1行给出不超过 10?^5的正整数 N,即参赛人数。随后 N 行... 查看详情

java1007素数对猜想(20分)pat乙级pat(basiclevel)practice(中文)(代码片段)

你是最棒的前言题目:1007素数对猜想(20分)要点:代码前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/233... 查看详情

1003我要通过!|pat(basiclevel)practice(代码片段)

1003我要通过!(20分)“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于PAT的“答案正确”大派送——只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条... 查看详情

(python)pat(basiclevel)practice刷题笔记(34-66)(代码片段)

我的代码仅能解题,效率不高也不够简洁,欢迎师傅们提出建议,能让我加以改进。Practice1036跟奥巴马一起编程(15分)1037在霍格沃茨找零钱(20分)1038统计同成绩学生(20分)1039到底买不买(20分)1040有几个PAT(25分)1041考试座... 查看详情

(python)pat(basiclevel)practice刷题笔记(代码片段)

从几道简单题开始,我的代码仅能解题,效率不高也不够简洁,欢迎师傅们提出建议,能让我加以改进。Practice1001害死人不偿命的(3n+1)猜想(15分)1002写出这个数(20分)1003我要通过!(20分)(有一个测试点未通过)... 查看详情

java1004成绩排名(20分)pat乙级pat(basiclevel)practice(中文)(代码片段)

前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/233zzh/PATqq交流群:1107710098题目:1004成绩排名(20分)读入n&... 查看详情

java1003我要通过!(20分)pat乙级pat(basiclevel)practice(中文)(代码片段)

你是最棒的前言前言题目:1003我要通过!(20分)思路代码前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/... 查看详情

java1003我要通过!(20分)pat乙级pat(basiclevel)practice(中文)(代码片段)

你是最棒的前言前言题目:1003我要通过!(20分)思路代码前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/... 查看详情

pat(basiclevel)practice1007素数对猜想(代码片段)

个人练习 让我们定义d?n??为:d?n??=p?n+1???p?n??,其中p?i??是第i个素数。显然有d?1??=1,且对于n>1有d?n??是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N(<),请计算不超过N的满足猜想的... 查看详情

java1005继续(3n+1)猜想(25分)pat乙级pat(basiclevel)practice(中文)(代码片段)

前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/233zzh/PATqq交流群:1107710098题目:1005继续(3n+1)猜想(25... 查看详情

pat(basiclevel)practice(中文)1011a+b和c(代码片段)

1#include<cstdio>2usingnamespacestd;3intt;4intmain()5longlonginta,b,c;6scanf("%d",&t);7for(inti=1;i<=t;i++)8scanf("%lld%lld%lld",&a,&b,&c);9if((a+b)>c)printf("Case#%d:true",i);10elseprintf("Case#%d:false",i);1112return0;13ViewCode注意给定区间: 给定区间[&m... 查看详情

java1006换个格式输出整数(15分)pat乙级pat(basiclevel)practice(中文)(代码片段)

你是最棒的前言题目:1006换个格式输出整数(15分)代码前言学得越多,不会得越多种一颗树的最佳时间是十年前,其次就是现在pat所有题解代码都会陆续上传到Github,请好兄弟们自行下载:https://github.com/233zzh/P... 查看详情

pat(basiclevel)practice1008数组元素循环右移问题(代码片段)

个人练习 一个数组A中存有N(>)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥)个位置,即将A中的数据由(A?0??A?1???A?N?1??)变换为(A?N?M???A?N?1??A?0??A?1???A?N?M?1??)(最后M个数循环移至最前面的M个... 查看详情

pat(basiclevel)practice(中文)1012数字分类(代码片段)

1#include<cstdio>2usingnamespacestd;3intnum[5],sumn[5],n;4voidinit();5voidread();6voiddeal();7intmain()8init();9read();10deal();11return0;1213voidinit()14for(inti=0;i<=4;i++)15num[i]=0;16sumn[i]=0;1718return;1920voidread()21intdata,flag=-1;22scanf("%d",&n);23for(inti=1;i<=n;i++)24sca... 查看详情