На столе лежат n монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом. Определите минимальное число монеток, которые нужно перевернуть, чтобы все монетки были повернуты вверх одной и той же стороной.

Монетки
Входные данные
В первой строке входного файла INPUT.TXT записано натуральное число N (1 ≤ N ≤ 100) – число монеток. В каждой из последующих N строк содержится одно целое число – 1 если монетка лежит решкой вверх и 0 если вверх гербом.

Выходные данные
В выходной файл OUTPUT.TXT выведите минимальное количество монет, которые нужно перевернуть.

INPUT.TXT OUTPUT.TXT
5 2
1
0
1
1
0


На столе лежат n монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом. Определите мини

Ulyana150806 Ulyana150806    3   21.05.2020 14:01    161

Ответы
Перуна Перуна  15.10.2020 04:22
PascalABC.NET ₃.₆.₃.₂₅₇₇## var a := ReadAllLines('input.txt')[1:]; var m := Min(a.Count(s -> s='0'), a.Count(s -> s='1')); WriteAllLines('output.txt', |m.ToString|)

Пример работы:


На столе лежат n монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом. Определите мини
ПОКАЗАТЬ ОТВЕТЫ
Шаурма1111111 Шаурма1111111  23.01.2024 15:26
Для решения данной задачи нужно посчитать количество монеток, которые нужно перевернуть.

1. Сначала мы должны считать число N из входного файла INPUT.TXT. Это количество монеток, которые лежат на столе.

2. Затем мы создадим переменную flip_count и присвоим ей значение 0. Эта переменная будет считать количество монеток, которые нужно перевернуть.

3. Мы будем использовать цикл, который будет повторяться N раз, чтобы считать состояние каждой монетки.

4. Внутри цикла мы будем считывать состояние каждой монетки и добавлять единицу к переменной flip_count, если она лежит гербом вверх.

5. После окончания цикла, мы выведем значение flip_count в выходной файл OUTPUT.TXT.

Обоснование: В данной задаче мы используем цикл для обработки каждой монетки на столе. Мы считываем состояние монетки и добавляем единицу к переменной flip_count только в том случае, если монетка лежит гербом вверх. Таким образом, мы подсчитываем минимальное количество монеток, которые нужно перевернуть.

Пошаговое решение:

1. Считываем число N из входного файла INPUT.TXT.
2. Создаем переменную flip_count и присваиваем ей значение 0.
3. Запускаем цикл, который будет повторяться N раз.
4. Внутри цикла считываем состояние каждой монетки и добавляем единицу к переменной flip_count, если монетка лежит гербом вверх.
5. По окончании цикла выводим значение flip_count в выходной файл OUTPUT.TXT.

Вот код на языке Python, решающий данную задачу:

```python
# Открываем входной и выходной файлы
input_file = open('INPUT.TXT', 'r')
output_file = open('OUTPUT.TXT', 'w')

# Считываем число N
N = int(input_file.readline())

# Инициализируем переменную flip_count
flip_count = 0

# Запускаем цикл для каждой монетки
for i in range(N):
# Считываем состояние монетки
coin_state = int(input_file.readline())

# Если монетка лежит гербом вверх, увеличиваем flip_count на 1
if coin_state == 0:
flip_count += 1

# Записываем результат в выходной файл
output_file.write(str(flip_count))

# Закрываем файлы
input_file.close()
output_file.close()
```

После выполнения этого кода, в файле OUTPUT.TXT будет записано минимальное количество монет, которые нужно перевернуть. В данном случае будет выведено число 2.

Таким образом, чтобы решить задачу, мы используем цикл для обработки каждой монетки и подсчитываем количество монеток, которые нужно перевернуть.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика