Начнём с того, что задача не имеет отношения к вычислению яркости или чёрно-белого значения, соответствующего восприятию человеком определенного цвета.
Требуется привести три заданных значения относительной яркости в диапазон 8-бит на канал, т. е. максимальное значение из трех обязано стать значением 255. Т.е. цвет с исходными значениями 1, 1, 1; где относительная яркость всех трех цветов равна станет цветом 255, 255, 255.
Отдельно про правила округления: цвет где, скажем яркость первого канала в 10 раз выше двух других, т.е. относительные значения цвета 100, 10, 10 и 1000, 100, 100 станут одним цветом 255, 25, 25 (либо цветом 255, 26, 26, что зависит как от правил округления (математическое round() / отбрасывание дробного значения ф-циями преобразования типов), так и от математики, которая в США и России отличается тем, что значение 0.5 может округляться либо до четного (округление банкира), либо вверх соответственно).
В общем, в простейшем случае, на плюсах, без ввода данных получается следующее, на питон переведете сами:
#include
#include
using namespace std;
int main()
{
int r = 1, g = 3, b = 15;
double maximum = std::max({r, g, b});
if (maximum == 0)
maximum = 1;
cout