Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Melvil
47 / 46 / 13
Регистрация: 20.05.2015
Сообщений: 251
#1

Минимальное число монеток, которые нужно перевернуть, чтобы все были повернуты вверх одной стороной - C++

13.07.2015, 01:21. Просмотров 393. Ответов 1
Метки нет (Все метки)

Добрый вечер, наткнулся на простую задачу - сложность всего лишь 8%. Её нужно решить с использованием цикла for. Задачу, я, конечно, решил, но само решение показалось мне очень громоздким. Можете привести ваш вариант решения? Текст задачи:

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

Монетки
Входные данные

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

Выходные данные

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

Пример:
5
1 0 1 0 1
Ответ: 2


Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.07.2015, 01:21     Минимальное число монеток, которые нужно перевернуть, чтобы все были повернуты вверх одной стороной
Посмотрите здесь:
C++ Какое минимальное количество спичек нужно для того, чтобы построить в пространстве N кубов со стороной в одну спичку
Найти минимальное количество шариков, которое необходимо перекрасить, чтобы все шарики были одного цвета C++
C++ Определить минимальное количество символов, которые нужно добавить в строку, чтобы получить палиндром
C++ задана некоторая сумма в рублях.определить минимальное количество монеток
Как можно записать строку в конец файла, чтобы данные которые были в нем не стерлись? C++
C++ Преобразование одной строки в другую за минимальное число операций
Дан массив A[1.50], элементы которого отличны от нуля. Расположить их в таком порядке, чтобы первыми были все положительные элементы, а затем - все о C++
Ошибка. В классе наследнике все элементы, которые были унаследованы от базового класса C++
C++ Преобразовать строку так, чтобы все буквы в ней были отсортированы по возрастанию
Преобразовать строку таким образом, чтобы все слова в ней были напечатаны наоборот C++
Преобразовать последовательность чисел так, чтобы сначала были нули, а потом все остальные. C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13063 / 7326 / 817
Регистрация: 27.09.2012
Сообщений: 18,081
Записей в блоге: 3
Завершенные тесты: 1
13.07.2015, 05:36     Минимальное число монеток, которые нужно перевернуть, чтобы все были повернуты вверх одной стороной #2
Как-то так(гкод):
C++
1
2
3
4
5
6
7
8
9
10
11
#include <fstream>
 
int main()
{
    std::ifstream i ( "INPUT.TXT" ) ;
    int N , t, c = 0 ;
    i >> N ;
    for ( ; i>>t ; )
        c+=t ;
    std::ofstream("OUTPUT.TXT") << (c<(N-c)?c:N-c) ;
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru