Решение с языка Python.
Вася не любит английский язык, но каждый раз старается получить хотя бы
четверку за четверть, чтобы оставаться ударником. В текущей четверти Вася
заметил следующую закономерность: по нечетным дням месяца он получал
тройки, а по четным – четверки. Так же он помнит, в какие дни он получал эти
оценки. Поэтому он выписал на бумажке все эти дни для того, чтобы оценить,
сколько у него троек и сколько четверок Васе это сделать, расположив
четные и нечетные числа в разных строчках. Вася может рассчитывать на оценку 4,
если четверок не меньше, чем троек.
Входные данные
В первой строке входного файла INPUT.TXT записано единственное число N
– количество элементов целочисленного массива (1<=N<=100). Вторая строка
содержит N чисел, представляющих заданный массив. Каждый элемент массива –
натуральное число от 1 до 31. Все элементы массива разделены пробелом.
3
Выходные данные
В первую строку выходного файла OUTPUT.TXT нужно вывести числа,
которые соответствуют дням месяцев, в которые Вася получил тройки, а во второй
строке соответственно расположить числа месяца, в которые Вася получил
четверки. В третьей строке нужно вывести «YES», если Вася может рассчитывать
на четверку и «NO» в противном случае. В каждой строчке числа следует выводить
в том же порядке, в котором они идут во входных данных. При выводе, числа
отделяются пробелом.
Примеры
№ INPUT.TXT OUTPUT.TXT
1
5
4 16 19 31 2
19 31
4 16 2
YES
2
8
29 4 7 12 15 17 24 1
29 7 15 17 1
4 12 24
NO
Первым делом, мы должны прочитать входные данные из файла INPUT.TXT. В первой строке записано количество элементов массива N. Во второй строке содержатся N чисел, представляющих заданный массив.
Давайте напишем код, который считает данные из файла:
```python
with open("INPUT.TXT", "r") as file:
n = int(file.readline().strip())
array = list(map(int, file.readline().strip().split()))
```
Теперь у нас есть количество элементов массива N и сам массив array.
Затем нам нужно определить, в какие дни Вася получил тройки, а в какие - четверки. В нашем случае, нечетные дни соответствуют тройкам, а четные - четверкам.
Давайте создадим два новых массива - odd_days и even_days, которые будут содержать дни месяца с тройками и четверками соответственно.
```python
odd_days = []
even_days = []
for day in array:
if day % 2 == 0:
even_days.append(day)
else:
odd_days.append(day)
```
Теперь у нас есть два массива - odd_days и even_days, которые содержат дни месяца с тройками и четверками.
Далее, нам нужно определить, может ли Вася рассчитывать на четверку. В условии задачи сказано, что для этого количество четверок должно быть не меньше, чем количество троек.
Мы можем проверить это с помощью простого условия и вывести результат в файл OUTPUT.TXT.
```python
result = ""
if len(even_days) >= len(odd_days):
result = "YES"
else:
result = "NO"
with open("OUTPUT.TXT", "w") as file:
file.write(" ".join(map(str, odd_days)) + "\n")
file.write(" ".join(map(str, even_days)) + "\n")
file.write(result)
```
Теперь наш код полностью решает задачу. Он считывает входные данные из файла INPUT.TXT, определяет дни месяца с тройками и четверками, проверяет, может ли Вася рассчитывать на четверку, и записывает результаты в файл OUTPUT.TXT.
Я надеюсь, что я смог достаточно подробно объяснить каждый шаг решения и что это будет понятно для школьника. Если у вас есть дополнительные вопросы, пожалуйста, дайте мне знать!