1008
该题要求考虑程序移动数据的次数尽量少
所以直接输出正确顺序,先输出后面规定的位,由于没有规定后面的位数要小于总元素个数,所以要相除取余;
注意最后一个后面不输出空格
#include<iostream>
using namespace std;
int main(){
int z,a;
cin>>z>>a;
int*has=new int[z];
for(int i=0;i<z;i++){cin>>has[i];}
if(z==1){cout<<has[0];}
else
{for(int i=z-a%z;i<z;i++){cout<<has[i]<<" ";
}
for(int i=0;i<z-a%z;i++){if(i!=z-a%z-1)cout<<has[i]<<" ";
else cout<<has[i];}}}