fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. void shift(int *a, int n, int k){
  4.  
  5. int i = k%n;
  6. int prev = a[0];
  7. int current = a[i];
  8. while(i!=0)
  9. {
  10. a[i]=prev;
  11. prev = current;
  12. i=(i+k)%n;
  13. current = a[i];
  14. //cout<<i<<" "<<a[i]<<endl;
  15. }
  16. a[0]=prev;
  17. }
  18. int main()
  19. {
  20. int n,k;
  21. cin>>n>>k;
  22. int a[n];
  23. for(int i=0; i<n; i++){
  24. cin>>a[i];
  25. }
  26. if(k>=1)
  27. shift(a,n,k);
  28. for(int i=0; i<n; i++){
  29. cout<<a[i]<<" ";
  30. }
  31.  
  32. }
Success #stdin #stdout 0s 15240KB
stdin
5 2
1 2 3 4 5
stdout
4 5 1 2 3