Przesuń elementy tablicy cyklicznie w lewo o zadaną liczbę miejsc.
Input
Najpierw dwie liczby n i k takie, że 1 < k < n < 10000, a następnie w kolejnym wierszu n liczb.
Output
W jednym wierszu n liczb w zmienionym porządku (przesuniętych cyklicznie o k miejsc).
Example
Input:
5 3
1 2 3 4 5
Output:
4 5 1 2 3
Kod źródłowy w C:
#include <stdio.h> #include <stdlib.h> int main() { int n, k, i; int tab[10000]; scanf("%d%d",&n,&k); for(i=0; i<n; ++i) { scanf("%d",&tab[i]); } for(i=k; i<n; ++i) { printf("%d ",tab[i]); } for(i=0; i<k; ++i) { printf("%d ",tab[i]); } return 0; }
Kod źródłowy w C++:
#include <iostream> using namespace std; int main() { int n, k, i; int tab[10000]; cin>>n>>k; for(i=0; i<n; ++i) { cin>>tab[i]; } for(i=k; i<n; ++i) { cout<<tab[i]<<" "; } for(i=0; i<k; ++i) { cout<<tab[i]<<" "; } return 0; }
Źródło: http://pl.spoj.com/problems/PP0602D/
Ten komentarz został usunięty przez autora.
OdpowiedzUsuń