Algoholic.in.ua

Решения > Молоко и пирожок

Молоко и пирожок С++

Категория: Решения | Добавлено: 2015-08-09 | Просмотров: 1023

Ученикам первого класса дополнительно дают стакан молока и пирожок, если вес первоклассника менее 30 кг. В первых классах школы учится n учеников. Стакан молока имеет емкость 200 мл, а упаковки молока – 0,9 л. Определить количество дополнительных пакетов молока и пирожков, необходимых каждый день.


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


В первой строке задано целое число n (1 ≤ n ≤ 2 147 483 647). В следующей строке идут n положительных чисел – массы первоклассников.


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


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


Идея решения:


  1. Проверяем вес каждого ученика. Ученик не должен бить невесомым, но в то же время его вес не должен превышать 30 кг. Также заметим, что вес - далеко не всегда целое число.
  2. Если вес ученика до 30 килограмм, добавляем один пирожок.
  3. Считаем, сколько литров молока еще нужно.
  4. Находим количество необходимых пакетов.

Решение на C++

        #include <iostream>
        using namespace std;

        int main()
        {
            int n,patties = 0,i = 0;
            float milk = 0,tmp = 0,wei;
            cin >> n;
            for(int i = 0; i < n; i++){
                cin >> wei;
                //1,2
                if(wei < 30 && wei > 0)patties++;
            }
            //3
            milk = (float)patties * 0.2;
            //4
            while(milk > tmp){
                tmp += 0.9;
                i++;
            }
            cout << i << " " << patties;
            return 0;
        }
        

Пример:
Входные данные: 20
30 37 31 25 32 29 35 40 28 25 30 34 26 23 20 22 21 30 38 33
Выходные данные: 2 9


Источник условия:
http://www.e-olymp.com/ru/problems/7365


Яндекс.Метрика
Украина онлайн