Tôi nghe nói ở đâu đó rằng một điều mà công nghệ không thể làm được là gấp khăn 1 . Vì vậy, bây giờ công việc của bạn là chứng minh tuyên bố đó là sai!
Cho một chuỗi làm đầu vào, được tạo thành từ các hình chữ nhật (khăn), như sau, gấp mỗi chiếc khăn lại một nửa hai lần. Ví dụ:
+------+ +------+ +--+
| | | | | |
| | | | | |
| | -> +------+ -> +--+
| |
| |
| |
+------+
Lưu ý rằng khi một chiếc khăn được gấp lại, đầu tiên nó được gấp lại, sau đó từ trái sang phải. Bạn phải lập trình hành vi này. Cũng lưu ý rằng trong các trường hợp thử nghiệm, khăn vẫn ở cùng một chỗ, nhưng gấp lại.
Quy tắc:
- Phương pháp tiêu chuẩn đầu vào / đầu ra.
- Tiêu chuẩn áp dụng.
- Đầu vào và đầu ra phải là một chuỗi.
- Những người bán hàng rong đều ổn trong đầu ra, miễn là những chiếc khăn nằm đúng vị trí so với nhau.
- Bạn có thể cho rằng chiều dài của mỗi bên của khăn sẽ luôn chia hết cho 2.
- Các khăn được thông qua như đầu vào sẽ luôn luôn là hình chữ nhật.
Khăn sẽ luôn được tách ra - tuy nhiên, chúng có thể được phân tách bằng số lượng khác nhau.
code-golf , vì vậy mã ngắn nhất sẽ thắng!
Các trường hợp thử nghiệm:
Input:
+------+
| |
| |
| |
| |
| |
| |
+------+
Output:
+--+
| |
| |
+--+
Input:
+--+ +--+ +--+
| | | | | |
| | | | | |
+--+ +--+ +--+
Output:
++ ++ ++
++ ++ ++
Input:
+----+
| |
| |
| |
| | ++
+----+ ++
Output:
+-+
| |
+-+
+
Input:
+--+
+--+ ++
||
||
++
Output:
++
+
+
1: Điều này đã bị Geobits và Laikoni từ chối. Tuy nhiên, tôi đã nghe thấy nó ở đâu đó.