У Козака Вуса є нескінченна кількість зелених, жовтих та червоних яблук.
Він буде їх виставляти в один ряд за наступним алгоритмом:
Спочатку g зелених яблук, потім y жовтих, потім r червоних, потім y жовтих, потім g зелених, а потім все знову нескінченну кількість разів. Наприклад, якщо g=1, y=3, r=4, то перші яблука виглядатимуть так:
GYYYRRRRYYYGGYYYRRRRYYYGGYYYRRR...
Тобто, всі яблука можна розбити на блоки. На цьому малюнку один блок це GYYYRRRRYYYG. Зверніть увагу, що блок починається і закінчується на один й той же символ. Саме тому на першому малюнку йдуть дві G підряд попри те, що g=1.
Знайдіть колір яблука, що знаходиться на n-ій позиції.
Входные данные
Перший рядок містить чотири цілі числа n, g, y, r (1≤n,g,y,r≤10
12
).
Зверніть увагу, що числа не вміщаються у 32-бітні цілочисельні типи даних. Тому потрібно використовувати 64-бітні цілочисельні типи даних, такі як long long в C++, long в Java чи int64 в Pascal.
Выходные данные
Якщо колір буде зелений, то виведіть «G».
Якщо колір буде жовтий, то виведіть «Y».
Якщо колір буде червоний, то виведіть «R».
Примеры
Ниже вы найдете примеры входных данных и ответов, которые должна вывести ваша программа.

Входные данные №1
1 1 3 4
Ответ №1
G
Входные данные №2
2 1 3 4
Ответ №2
Y
Входные данные №3
12 1 3 4
Ответ №3
G
Входные данные №4
13 1 3 4
Ответ №4
G
Входные данные №5
20 1 3 4
Ответ №5
R
Входные данные №6
1000000000000 1 3 4
Ответ №6
Y

Ответы

Ответ дал: deletantgg1com
0

Ответ:

n, g, y, r = map(int, input().split())

count = 0

while True:

   count += g

   if count > n-1:

       print('G')

       break

   count += y

   if count > n-1:

       print('Y')

       break

   count += r

   if count > n-1:

       print('R')

       break

   count += y

   if count > n-1:

       print('Y')

       break

   count += g

   if count > n-1:

       print('G')

       break

Объяснение:

Питон 3.8

)

Вас заинтересует