PAT (Basic Level) Practice 乙级 1008
思路:主要是通过倒置数组完成此问题或者倒置输出数组
方案一:
#include<iostream>
using namespace std;
int main()
{
int i,k;
cin >> i >> k;
int a[i];
k %= i;
for(int m = 0; m < i; m++) cin >> a[m];
for(int n = i - k; n < i; n++) cout << a[n] << " ";
for(int n = 0; n < i - k - 1; n++) cout << a[n] << " ";
cout << a[i-k-1];
return 0;
}
方案二:
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int i,k;
cin >> i >> k;
int a[i];
k %= i;
reverse(a, a+i);
reverse(a, a+k);
reverse(a+k, a+i);
for(int j=0;j<i-1;j++)
cout << a[j] << " ";
cout << a[i-1];
return 0;
}