Алгоритмы и структуры данных — 2020. Набор задач 4 |  
Start: Oct.16.2020 at 08:00:00 AM 
Finish: Oct.30.2021 at 08:00:00 AM 
The contest is finished! 
• Contest scoreboard 
 |    
 
Feedback |  | If you notice incorrect translations in Contester, please let author know.
 |    
 | 
Time limit 2000/2000/2000/2000 ms. Memory limit 65536/65536/65536/65536 Kb. 
  
    
    
    
    
    Странная функция
    Васе дали задание — вычислить значение сложной рекурсивной функции F, принимающей три аргумента a, b и c. Функция F определена следующим образом (запись X % M означает взятие остатка от деления X на M):  -  Если a ≤ 0 или b ≤ 0 или c ≤ 0, то F(a, b, c) = 1; 
 -  Если a > 30, то F(a, b, c) = F(30, b, c); 
 -  Если b > 30, то F(a, b, c) = F(a, 30, c); 
 -  Если c > 30, то F(a, b, c) = F(a, b, 30); 
 -  Если a > b и a > c, то F(a, b, c) = (F(a - 2, b, c) + F(a - 1, b - 1, c) + F(a - 1, b, c - 1)) % M; 
 -  Если b > a и b > c, то F(a, b, c) = (F(a, b - 2, c) + F(a, b - 1, c) + F(a, b - 1, c - 1)) % M; 
 -  Если c > a и c > b, то F(a, b, c) = (F(a, b, c - 3) + F(a - 1, b, c - 1) + F(a, b - 1, c - 1)) % M; 
 -  Во всех остальных случаях F(a, b, c) = (F(a - 1, b, c) + F(a, b - 1, c) + F(a, b, c - 1)) % M; 
  Вася расстраивается, потому что его программа выдаёт ответ только через несколько часов, и сетует на медленный компьютер. Попробуйте помочь ему определить величину F для заданных a, b и c. Выходные данные Выведите одно целое число — значение F(a, b, c).     
Для отправки решений необходимо выполнить вход.
  
 |