Задан размер месячной зарплаты N го количества работников компании «пассажирские перевозки». Определите размер наименьшей и наибольшей заработной платой. Вычислите среднюю заработную плату служащих компании
Думаю, логика у нас здесь будет такая: нужно разложить данные три числа на простые сомножители. Получится: 132 = 2 * 2 * 3 * 11 106 = 2 * 53 134 = 2 * 67 Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее: от первого - 2 * 2 * 3 * 11 от второго - 53 (двойку не берём, потому что она уже взята с первым) от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи: первый намотает 3551 круг второй - 4422 круга третий - 3498 кругов.
/* C++ compiler gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010 Copyright (C) 2015 Free Software Foundation, Inc. */
#include <iostream> #include <vector> using namespace std;
int main() { int count = 0; cout <<"Введите количество призывников: "; cin >>count; if (count>17) count=17; vector<int> tanks(count); for (unsigned i=0; i<tanks.size(); i++) cin >>tanks[i]; int min=300, max=0; for (unsigned i=0; i<tanks.size(); i++) { if (min>tanks[i]) min=tanks[i]; if (max<tanks[i]) max=tanks[i]; } int cnt=0; for (unsigned i=0; i<tanks.size(); i++) { if ((tanks[i]!=min) and (tanks[i]!=max)) cnt++; }
132 = 2 * 2 * 3 * 11
106 = 2 * 53
134 = 2 * 67
Что у них есть общего - то можно откинуть, потому что количество кругов будет при общих сомножителях делиться без остатка. Собрать в ответ нужно следующее:
от первого - 2 * 2 * 3 * 11
от второго - 53 (двойку не берём, потому что она уже взята с первым)
от третьего - 67 (двойку опять не берём)
Получается: 2 * 2 * 3 * 11 * 53 * 67 = 468732 секунды. Это, как я думаю, ответ.
При этом (чисто для сведения), до момента встречи:
первый намотает 3551 круг
второй - 4422 круга
третий - 3498 кругов.
C++ compiler
gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010
Copyright (C) 2015 Free Software Foundation, Inc.
*/
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int count = 0;
cout <<"Введите количество призывников: ";
cin >>count;
if (count>17) count=17;
vector<int> tanks(count);
for (unsigned i=0; i<tanks.size(); i++) cin >>tanks[i];
int min=300, max=0;
for (unsigned i=0; i<tanks.size(); i++)
{
if (min>tanks[i]) min=tanks[i];
if (max<tanks[i]) max=tanks[i];
}
int cnt=0;
for (unsigned i=0; i<tanks.size(); i++)
{
if ((tanks[i]!=min) and (tanks[i]!=max)) cnt++;
}
cout <<cnt <<endl;
}