Programação CompetitivaFácil

Problema de ladrilho

Guia detalhado e implementação de Python para o problema do 'Tiling Problem'.

Declaração do problema

Fácil

Escreva uma função tiling_ways(n) que retorne o número de maneiras de colocar lado a lado um tabuleiro 2xn usando dominós 2x1. Os dominós podem ser colocados verticalmente ou horizontalmente.

Restrições
  • 1 <= n <= 50

Exemplos

Example 1
Input
tiling_ways(3)
Output
3
Explanation

For a 2x3 board, there are 3 ways: 3 vertical tiles, or 1 vertical and 2 horizontal tiles (in two configurations).

Example 2
Input
tiling_ways(4)
Output
5
Explanation

For a 2x4 board, there are 5 ways to tile it.

Need a Hint?
Considere o uso de estruturas de dados específicas da Programação Dinâmica, como conjuntos ou heaps.
Edge Cases to Watch
  • Estruturas de entrada vazias
  • Entradas de elemento único
  • Grandes limites numéricos

Pronto para resolver?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Abrir no Editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Recursos Python recomendados

Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.