Ich habe irgendwo gehört, dass eine Sache, die die Technologie noch nicht kann, das Falten von Handtüchern 1 ist . Es ist nun Ihre Aufgabe, diese Aussage als falsch zu beweisen!
Wenn Sie eine Zeichenfolge als Eingabe verwenden, die aus Rechtecken (Handtüchern) besteht, falten Sie jedes Handtuch zweimal in zwei Hälften. Beispielsweise:
+------+ +------+ +--+
| | | | | |
| | | | | |
| | -> +------+ -> +--+
| |
| |
| |
+------+
Beachten Sie, dass ein gefaltetes Handtuch zuerst gefaltet wird und dann von links nach rechts. Ihr Programm muss dieses Verhalten ebenfalls nachahmen. Beachten Sie auch, dass in den Testfällen die Handtücher an derselben Stelle bleiben, aber gefaltet sind.
Regeln:
- Standardmethoden für die Eingabe / Ausgabe.
- Es gelten Standardlücken.
- Eingabe und Ausgabe sollten als Zeichenfolge erfolgen.
- Schleppende Whatever sind in der Ausgabe in Ordnung, solange die Handtücher im richtigen Verhältnis zueinander stehen.
- Sie können davon ausgehen, dass die Länge jeder Seite des Handtuchs immer durch 2 teilbar ist.
- Die als Eingabe übergebenen Handtücher sind immer rechteckig.
Die Handtücher werden immer getrennt - sie können jedoch durch unterschiedliche Beträge getrennt werden.
Code-Golf , also gewinnt der kürzeste Code!
Testfälle:
Input:
+------+
| |
| |
| |
| |
| |
| |
+------+
Output:
+--+
| |
| |
+--+
Input:
+--+ +--+ +--+
| | | | | |
| | | | | |
+--+ +--+ +--+
Output:
++ ++ ++
++ ++ ++
Input:
+----+
| |
| |
| |
| | ++
+----+ ++
Output:
+-+
| |
+-+
+
Input:
+--+
+--+ ++
||
||
++
Output:
++
+
+
1: Dies wurde von Geobits und Laikoni widerlegt. Ich habe es jedoch irgendwo gehört.