刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

数组指定部分逆序重放
将一个数组中的前k项按逆序重新存放。例如,将数组8,6,5,4,1前3项逆序重放得到5,6,8,4,1。
时间限制:1000
内存限制:65536
输入
输入为两行: 第一行两个整数,以空格分隔,分别为数组元素的个数n(1 < n < 100)以及指定的k(1 <= k <= n)。 第二行是n个整数,每两个整数之间用空格分隔。
输出
输出为一行:输出按题目要求逆序后数组的整数,每两个整数之间用空格分隔。
样例输入

5 3
8 6 5 4 1

样例输出

5 6 8 4 1

使用微信搜索喵呜刷题,轻松应对考试!

答案:

include<bits/stdc++.h>

using namespace std;

int a[105];

int main()

{

int n,k;

cin>>n>>k;

for (int i=1;i<=n;i++)

{

cin>>a[i];

}

for (int i=k;i>=1;i–)

{

cout<<a[i]<<" ";

}

for (int i=k+1;i<=n;i++)

{

cout<<a[i]<<" ";

}

return 0;

}

解析:

【喵呜刷题小喵解析】:首先,我们定义了一个数组`a`,用于存储输入的整数。然后,我们从标准输入读取数组的大小`n`和需要逆序的项数`k`。接下来,我们使用一个循环来读取数组中的每个元素,并将其存储在数组`a`中。然后,我们使用两个循环来输出逆序后的数组。第一个循环从`k-1`开始,向前遍历数组,并将每个元素输出到标准输出。第二个循环从`k`开始,向后遍历数组,并将每个元素输出到标准输出。注意,数组索引从0开始,因此在读取和输出数组元素时,我们需要将索引减1或加1。另外,题目中要求输出逆序后的数组,因此在输出时,我们需要将前`k`个元素逆序输出。在C++中,我们可以使用循环来实现逆序输出,也可以使用`reverse`函数来逆序数组,但在这个问题中,使用循环更为简单和直观。
创作类型:
原创

本文链接:数组指定部分逆序重放 将一个数组中的前k项按逆序重新存放。例如,将数组8,6,5,4,1前3项逆序重

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share