//1. 问题描述
//从右侧旋转一个n个元素的数组,旋转k位。例如:n=7,k=3, arr=[1,2,3,4,5,6,7]旋转成为arr=[5,6,7,1,2,3,4]。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,k;
vector<int>v;
while(cin>>n>>k)
{
v.clear();
k=n-k%n;
for(int i=1;i<=n;i++)
v.push_back(i);
reverse(v.begin(),v.begin()+k);
reverse(v.begin()+k,v.end());
reverse(v.begin(),v.end());
for(int i=0;i<n;i++)
cout<<v[i]<<" ";
}
return 0;
}
旋转数组
最新推荐文章于 2022-03-20 21:33:45 发布