我是靠谱客的博主 积极流沙,这篇文章主要介绍1008 数组元素循环右移问题 (20 分)C++ 示例代码+解题思路,现在分享给大家,希望可以做个参考。

1008 数组元素循环右移问题 (20 分)

在这里插入图片描述
输入格式:
每个输入包含一个测试用例,第1行输入N(1≤N≤100)和M(≥0);第2行输入N个整数,之间用空格分隔。

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

输入样例:
6 2
1 2 3 4 5 6

输出样例:
5 6 1 2 3 4

思路:

使用 v e c t o r vector vector存储数据;
弹出最后的 M M M个元素,然后依次插入到容器开头即可。

示例代码:

#include<iostream>
#include<vector> 
using namespace std;
int main(){
	int N,M;
	vector<int>v1;
	cin>>N>>M;
	int num;
	for(int i=0;i<N;i++){
		cin>>num;
		v1.push_back(num);
	}
	for(int i=0;i<M;i++){//弹出最后 M个元素
		int temp=v1.back();
		v1.pop_back();
		v1.insert(v1.begin(),temp);//插入到开头
	}
	int flag=0;//格式
	for(auto x:v1){
		if(flag==1)
			cout<<" ";
		cout<<x;
		flag=1;
	}
	return 0;
}

最后

以上就是积极流沙最近收集整理的关于1008 数组元素循环右移问题 (20 分)C++ 示例代码+解题思路的全部内容,更多相关1008内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(143)

评论列表共有 0 条评论

立即
投稿
返回
顶部