Você trabalha em uma impressora virtual antiquada. Para ajudá-lo a organizar suas cartas monoespaçadas mais rapidamente, você decide tornar o programa mais curto possível para ajudá-lo. Dada uma sequência de texto e um tamanho de página, gere e produza cada página do texto.
Exemplos
Por exemplo, com uma largura de página de 14, altura 7 e algum texto, eis o seu livro:
14, 7, "Fruits make an extremely good snack due to their utterly scrumptious sweetness. They are also very healthy for you."
+------------+
| Fruits |
| make an |
| extremely |
| good snack |
| due to |
+------------+
+------------+
| their |
| utterly |
| scrumptio- |
| -us |
| sweetness. |
+------------+
+------------+
| They are |
| also very |
| healthy |
| for you. |
| |
+------------+
Aqui está a configuração básica da página:
|---i.e.14---|
+------------+ -
| Xxxxxxxxxx | |
| Xxxxxxxxxx | i.
| Xxxxxxxxxx | e.
| Xxxxxxxxxx | 7
| Xxxxxxxxxx | |
+------------+ -
Algumas coisas
- Há uma margem de um espaço entre as bordas da página e o texto.
- A largura e a altura incluem as bordas da caixa, se isso não estiver claro.
- A envolvência ocorre apenas se uma palavra não couber em uma única linha.
- O programa precisa ser capaz de produzir quantas páginas forem necessárias, e somente essas.
- Seu programa precisa suportar qualquer tamanho de página, não apenas 14 por 7.
- Esse é o código golf, então a menor solução em bytes (em qualquer idioma) vence.
- Não estrague a diversão. As brechas padrão obviamente não são permitidas.
Ah, e falando nisso:
+------------+
| May the |
| best book |
| publisher |
| win. Good |
| Luck! |
+------------+
+------------+
| Best |
| program |
| so far: |
| Charcoal |
| |
+------------+
for example 14
que é #e.g.
scru-/-mpt-/-ious
)