должно быть минимум 7 элементов
Объяснение:
Каждый излучающий элемент имеет два состояния- красный или синий цвет (выключенное состояние не рассматривается по условиям).
Значит, число возможных вариантов, которые можно показать на таком табло равно двум в степени, равной числу элементов.
Например:
один элемент: различных сигнала (состояния панели)
три элемента: различных сигналов можно отобразить
шесть элементов: различных сигнала (мало, надо сто)
семь элементов: различных сигналов (нам хватит)
Выбираем семь элементов, т.к. ими можно отобразить сто вариантов (и даже немного больше).
Можно и посчитать число элементов напрямую, без подбора.
Считается через логарифм по основанию два из десяти, затем округляется с избытком (то есть, всегда вверх):
В расчёте также показано, что такой логарифм можно посчитать через отношение двух десятичных логарифмов (lg), либо двух натуральных логарифмов (ln).
#include <iostream>
#include <vector>
using namespace std;
int am_dig(int k){
int res = 0;
while(k > 0){
res++;
k /= 10;
}
return res;
}
double average(vector<double> a){
double sum = 0;
for(auto i: a)
sum += i;
return sum/a.size();
}
int main() {
vector<double> a;
double x = 1;
while(x != 0){
cin >> x;
if(am_dig(x) == 3)
a.push_back(x);
}
if(a.size() == 0)
cout << "NO";
else
cout << average(a);
}