Задан массив из n целых чисел. Поменяйте
местами соседние элементы массива (a0 с a1,
a2 с a3 и так далее). Если элементов
нечетное количество, то последний элемент следует оставить на своем месте.
Вход. В
первой строке записано число n. В следующей строке записано n целых
чисел. Все числа по модулю не превышают 100.
Выход. Вывести
обновленный массив.
Пример входа |
Пример выхода |
7 3 5 -7 7 5 -9 -4 |
5 3 7 -7 -9 5 -4 |
массив
Двигаемся по четным индексам i массива
пока i < n – 1. Меняем местами элементы mi и mi+1 (i = 0, 2, 4, …).
Реализация алгоритма – цикл
Читаем входные данные.
scanf("%d", &n);
for (i = 0; i < n; i++)
scanf("%d", &m[i]);
Двигаемся по четным индексам i массива
пока i < n – 1. Используя дополнительную
переменную temp, меняем
местами элементы mi и mi+1.
for (i = 0; i + 1 < n; i += 2)
{
temp = m[i]; m[i] = m[i +
1]; m[i + 1] = temp;
}
Выводим результирующий массив.
for (i = 0; i < n; i++)
printf("%d
", m[i]);
printf("\n");
Java реализация
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
int n = con.nextInt();
int a[]= new int[n];
for (int i = 0; i < n; i++)
a[i] = con.nextInt();
for (int i = 0; i < n - 1; i += 2)
{
int temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
}
for (int i = 0; i < n; i++)
System.out.print(a[i] + " ");
con.close();
}
}
Python реализация
n = int(input())
lst = list(map(int,input().split()))
for i in range(0,n - 1,2):
lst[i], lst[i+1] = lst[i+1], lst[i]
for i in range(n):
print(lst[i], end = " ")