21-school.ru
//#include <stdio.h>
//
//int main() {
// return 0;
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//
//void maxmin(int prob1, int prob2, int prob3, int* max, int *min);
//
///* Найди максимальную и минимальную вероятности. */
//int main()
//{
// int x, y, z;
// scanf("%d %d %d", &x, &y, &z);
//
// int max, min;
//
// maxmin(x, y, z, &max, &min);
//
// printf("%d %d", max, min);
//
// return 0;
//}
//
//
///* Эту функцию нужно сохранить! (Твой ИИ) */
///* Но ошибки и баги необходимо исправить. */
//void maxmin(int prob1, int prob2, int prob3, int* max, int *min)
//{
// *max = *min = prob1;
//
// if (prob2 > *max)
// *max = prob2;
// if (prob2 < *min)
// *min = prob2;
//
// if (prob3 > *max)
// *max = prob3;
// if (prob3 < *min)
// *min = prob3;
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#define NMAX 10
//
//int input(int* a, int* n);
//void output(int* a, int* n);
//void squaring(int* a, int* n);
//
//int main()
//{
// int n, data[NMAX];
// input(data, &n);
// squaring(data, &n);
// output(data, &n);
//
// return 0;
//}
//
//int input(int* a, int* n)
//{
// scanf("%d", n);
// for (int* p = a; p - a < *n; p++)
// {
// scanf("%d", p);
// }
// return *a;
//}
//
//void output(int* a, int *n)
//{
// for (int* p = a; p - a < *n; p++)
// {
// printf("%d ", *p);
// }
//}
//
//void squaring(int* a, int *n)
//{
// for (int* p = a; p - a < *n; p++)
// {
// *p = *p * *p;
// }
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#define NMAX 10
//
//int input(int* a, int* n);
//void output(int* a, int *n);
//int max(int* a, int *n);
//int min(int* a, int *n);
//double mean(int* a, int *n);
//double variance(int* a, int *n);
//
//void output_result(int max_v, int min_v, double mean_v, double variance_v);
//
//int main()
//{
// int n, data[NMAX];
// input(data, &n);
// output(data, &n);
// max(data, &n);
// min(data, &n);
// mean(data, &n);
// output_result(max(data, &n), min(data, &n), mean(data, &n), variance(data, &n));
//
// return 0;
//}
//
//int input(int* a, int* n) {
// scanf("%d", n);
// for (int* p = a; p - a < *n; p++) {
// scanf("%d", p);
// }
// return *a;
//}
//
//void output(int* a, int* n) {
// for (int* p = a; p - a < *n; p++) {
// printf("%d ", *p);
// }
//}
//
//int max(int* a, int* n) {
// int* max = a;
// for (int* p = a; p - a < *n; p++) {
// if (*p > *max) max = p;
// }
// return *max;
//}
//
//int min(int* a, int* n) {
// int min = *a;
// for (int* p = a; p - a < *n; p++) {
// if (*p < min) min = *p;
// }
// return min;
//}
//
//double mean(int* a, int* n) {
// double mean = 0;
// for (int* p = a; p - a < *n; p++) {
// mean = mean + *p;
// }
// mean = mean / *n;
// return mean;
//}
//
//double variance(int* a, int* n) {
// double variance = 0;
// for (int i = 0; i < *n; i++) {
// variance = variance + ((a[i] - mean(a, n)) * (a[i] - mean(a, n)));
// }
// return variance / *n;
//}
//
//void output_result(int max_v, int min_v, double mean_v, double variance_v) {
// printf("\n%d %d %.6lf %.6lf", max_v, min_v, mean_v, variance_v);
//}
/*
Search module for the desired value from data array.
Returned value must be:
- "even"
- ">= mean"
- "<= mean + 3 * sqrt(variance)"
- "!= 0"
OR
0
*/
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <math.h>
//
//int input(int *a, int *n);
//
//int search(int* a, int* n);
//double mean(int* a, int* n);
//double variance(int* a, int* n);
//void output(int* a, int* n);
//
//#define NMAX 30
//
//int main() {
// int data[NMAX], n;
//
// input(data, &n);
// output(data, &n);
//
// return 0;
//}
//
//int input(int* a, int* n) {
// scanf("%d", n);
// for (int* p = a; p - a < *n; p++) {
// scanf("%d", p);
// }
// return *a;
//}
//
//int search(int* a, int* n) {
// int r = 0;
// for (int i = 0; i < *n; i++) {
// if ((a[i] % 2 == 0) && (a[i] >= mean(a, n)) && (a[i] <= mean(a, n) + 3 * sqrt(variance(a, n))) && a[i] != 0) r = a[i];
// else r;
// }
// return r;
//}
//
//double mean(int* a, int* n) {
// double mean = 0;
// for (int* p = a; p - a < *n; p++) {
// mean = mean + *p;
// }
// mean = mean / *n;
// return mean;
//}
//
//double variance(int* a, int* n) {
// double variance = 0;
// for (int i = 0; i < *n; i++) {
// variance = variance + ((a[i] - mean(a, n)) * (a[i] - mean(a, n)));
// }
// return variance / *n;
//}
//
//void output(int* a, int* n) {
// int r = search(a, n);
// printf("%d", r);
//}
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//
//#define NMAX 10
//
//int input(int *a);
//int sort(int* a);
//void output(int *a);
//
//int main() {
// int a[NMAX];
//
// input(a);
// sort(a);
// output(a);
// return 0;
//}
//
//int input(int* a) {
// for (int i = 0; i < NMAX; i++) {
// scanf("%d", &a[i]);
// }
// return *a;
//}
//
//int sort(int* a) {
// for (int i = 1; i < NMAX; i++) {
// for (int j = 0; j < NMAX - i; j++) {
// if (a[j] > a[j + 1]) {
// int temp = a[j];
// a[j] = a[j + 1];
// a[j + 1] = temp;
// }
// }
// }
// return *a;
//}
//
//void output(int* a) {
// for (int i = 0; i < NMAX; i++) {
// printf(" %d", a[i]);
// }
//}
///*------------------------------------
// Здравствуй, человек!
// Чтобы получить ключ,
// поработай с комментариями.
//-------------------------------------*/
//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//
//#define NMAX 10
//
//void input(int* buffer, int* length);
//void output(int* buffer, int *length);
//int sum_numbers(int* buffer, int *length);
//int find_numbers(int* buffer, int *length, int number, int* numbers);
//
///*------------------------------------
// Функция получает массив данных
// через stdin.
// Выдает в stdout особую сумму
// и сформированный массив
// специальных элементов
// (выбранных с помощью найденной суммы):
// это и будет частью ключа.
//-------------------------------------*/
//int main()
//{
// int data[NMAX], n;
// input(data, &n);
// output(data, &n);
// return 0;
//}
//
//void input(int* buffer, int* length) {
// scanf("%d", length);
// for (int i = 0; i < *length; i++) {
// scanf("%d", &buffer[i]);
// }
//}
//
//void output(int* buffer, int *length) {
// int sum = sum_numbers(buffer, length);
// printf("%d\n", sum);
//
// int numbers[NMAX];
// int j = find_numbers(buffer, length, sum, numbers);
// for (int i = 0; i < j; i++) {
// printf("%d ", numbers[i]);
// }
//}
//
///*------------------------------------
// Функция должна находить
// сумму четных элементов
// с 0-й позиции.
//-------------------------------------*/
//int sum_numbers(int* buffer, int *length)
//{
// int sum = 0;
// for (int i = 0; i < *length; i++)
// {
// if (buffer[i] % 2 == 0)
// {
// sum = sum + buffer[i];
// }
// }
// return sum;
//}
//
///*------------------------------------
// Функция должна находить
// все элементы, на которые нацело
// делится переданное число, и
// записывать их в выходной массив.
//-------------------------------------*/
//int find_numbers(int* buffer, int* length, int number, int* numbers)
//{
// int j = 0;
// for (int i = 0; i < *length; i++) {
// /*if ((buffer[i] != 0)&&(number % buffer[i] == 0)) {
// numbers[j] = buffer[i];
// j++;
// }*/
// if (buffer[i] != 0) {
// if (number % buffer[i] == 0) {
// numbers[j] = buffer[i];
// j++;
// }
// }
// }
// return j;
//}
//cycle_shift
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define NMAX 10
void input(int * data, int *n, int *c);
void cycle_shift(int* data, int* n, int* c);
void output(int* data, int* n, int* c);
int main() {
int data[NMAX], n, c;
input(data, &n, &c);
cycle_shift(data, &n, &c);
output(data, &n, &c);
return 0;
}
void input(int* data, int* n, int* c) {
scanf("%d", n);
for (int i = 0; i < *n; i++) {
scanf("%d", &data[i]);
}
scanf("%d", c);
}
void cycle_shift(int* data, int* n, int* c) {
int r[NMAX];
for (int i = 0; i < *n; i++) {
int j = i - *c;
if (j < 0) j = j + *n;
if (j > *n - 1) j = j - *n;
r[j] = data[i];
}
for (int i = 0; i < *n; i++) {
data[i] = r[i];
}
}
void output(int* data, int* n, int* c) {
//printf("%d", *n);
for (int i = 0; i < *n; i++) {
printf("%d ", data[i]);
}
//printf("%d", *c);
}