Escrito por Pedro Racchetti
Conhecimentos utilizados:
Note que como
é bastante baixo e existe apenas uma resposta para cada
, bastaria fazer uma sequência de 11
. No entanto, isso tornaria o código longo, e aumentaria a chances de erros de digitação, as vezes difíceis de serem corrigidos – lembre-se, tempo é um recurso valioso na OBI! Portanto, ao invés de dividir o problema em vários casos, iremos calcular, a partir de
, quantos dedos cada mão irá mostrar, dividindo o problema em apenas três casos:
, haverá 0 dedos sendo mostrados em cada mão;
haverá
dedos na mão esquerda, e 0 na direita;
Haverá 5 dedos na mão esquerda, e
na direita.
Sabendo a quantidade exata de dedos em cada mão, podemos fazer dois
, um para cada mão, para imprimir o número apropriado de dedos, devidamente tratando os casos em que uma mão não mostra dedos.
A complexidade da solução é
, já que entre os dois
, haverão no máximo
operações. Segue o código, para melhor compreensão.
