Пожалуйста, прочтите новое правило об ограничении использования AI-инструментов. ×

Блог пользователя wildcraft

Автор wildcraft, 10 лет назад, По-английски

Hi Folks,I am learning competitive programming now a days.I have started solving recursion/dp based problems.I am trying this problem link. Please help me to find out recursion in the above problem.

Thanks

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

It is not a DP problem. Find the leftmost digit that is unlucky. If there is such a digit let its position be i. If the digit is less than 3 then make it 3 and fill all positions on the right with 3s. Otherwise, if it is less than 5 then make it 5 and fill the positions on the right with 3s. If the digit is greater than 5 find the rightmost 3 on its left at position j. Make this 3 a 5 and fill the positions on its right with 3s. If there is no such 3, then print s+1 3s where s is the length of N. If there is no unlucky digit find the last 3, change it to 5 and fill the positions on its right with 3s. If there is no 3 then print s+1 3s.