Pascal ABC

 

ГЛАВНАЯ
ССЫЛКИ
ОЛИМПИАДНЫЕ ЗАДАНИЯ
Очень простые

Проблема с A и B

Трамвайные билеты

Шифр Цезаря

Четные и нечетные члены последовательности

"Мы вас упакуем!"

Простые

Равновеликие прямоугольники

Скобки

 

Уравнение

 

Вирусы

 

КВН

 

Коррекция кода

 

Степень

 

Демократия в опасности

 

Пуговицы

 

A to B

 

Палиндромы

 

Почти Крэг Туми

 

Виза

 

Ездец

 
Средней сложности  

MIME64

 

Куль хацкеры

 

Редкое имя

 

Города

 

Исправления

 

Банки

 

2^n

 

Ниточка

 

Массивище

 

Знакомые

 

Считаем кораблики

Лошадью ходи!

Левые повороты

Прицельное метание помидор

Анаграммы

Треугольник

Принцип компании

Уникальная строка

Конфуз

K-ичные числа

Михаил Густокашин против бюрократии

Агенты

Игра в слова

Сложные

Диски

Домино

Монеты

Программистика

Хитрющая строка

Робот-сапер

Квадраты

Упаковка простых

Оппозиция

 

Замок

 

Многоугольники

 

Электронные часы

 

Дождик

 

Черепаха

 

Метро

 

Террористы

 

Школы

 
Очень сложные/особо интересные  

Система Защиты

 

Бизнес-классики

 

Телеметрия

 

Лесной пожар

 

Олимпиада

 

Автобусный диспетчер

 

 Кубики

 

Электронная почта

 

Автобус

 

 

 

 

ОЛИМПИАДНЫЕ ЗАДАНИЯ

Олимпиадные задачи с рекомендациями к решениям

Задача 4: Четные и нечетные члены последовательности

Даны натуральное число n, 1 <= n <= 100, целые числа a1, a2, ..., an, 1 <= ai <= 100.
Требуется получить последовательность x1, y1, x2, y2, ..., xk, yk, где x1, x2, ..., xm -- взятые в порядке следования четные (делящиеся нацело на 2) члены последовательности a1, a2, ..., an, а y1, y2, ..., yl -- взятые в порядке следования нечетные члены последовательности a1, a2, ..., an, k = min(m, l), m + l = n.

Формат входных данных
Входной файл INPUT.TXT содержит в первой строке целое число n. Во второй идут целые числа a1, a2, ..., an, разделенные пробелами.

Пример:
10
98 56 33 73 41 8 48 93 52 80

Формат выходных данных
Выходной файл OUTPUT.TXT должен содержать последовательность x1, y1, x2, y2, ..., xk, yk, расположенную в одной строке файла, числа должны быть разделены пробелами. Если исходная последовательность не содержит ни одного четного или ни одного нечетного члена, т.е. k = 0, то в файл необходимо вывести цифру 0 (нуль).

Пример:
98 33 56 73 8 41 48 93

Решение:
Простая задача. Заведем два дополнительных массива размерностью 50, один из которых будет хранить четные, а другой - нечетные члены последовательности. Для каждого из массивов заведем собственный счетчик, указывающий на количество членов в данном массиве.
Первоначально инициализируем счетчики нулем. Затем, при чтении очередного числа, проверяем, четное ли оно и, в зависимости от четности, помещаем в один из массивов(до этого увеличив соответственный счетчик на 1).
После того, как разбиение последовательности на две закончено, найдем, какой из счетчиков меньше. В случае если минимальный счетчик раве 0 - выводим 0 и выходим, иначе последовательно выводим сначала четное число с номером n, а затем нечетное с номером n (n изменяется от 1 до min).
Все!

Далее ð





 


 

 

 
 

СЕРВИС

Copyright © 2008 СОШ №2 им. Н.П. Массонова г.Свислочь © Синица А.А.