Viết chương trình hoặc hàm sẽ tạo ra một chuỗi nhất định theo kiểu cầu thang, viết từng phần của một từ bắt đầu bằng một nguyên âm một dòng bên dưới phần trước.
Ví dụ:
Input: Programming Puzzles and Code Golf
Output: Pr P C G
ogr uzzl and od olf
amm es e
ing
Đầu vào
Một chuỗi không chứa gì ngoài các chữ cái và dấu cách.
Chuỗi có thể được truyền qua STDIN
hoặc đối số chức năng hoặc bất cứ điều gì tương đương.
Chữ cái có thể là chữ thường hoặc chữ hoa.
Đầu vào luôn được giả định tuân theo các quy tắc đó, bạn không cần kiểm tra đầu vào không chính xác.
Đầu ra
Mỗi lần một nguyên âm (có nghĩa là, a
, e
, i
, o
, u
hoặc y
) bắt gặp trong một từ, bạn phải ra phần còn lại của từ trên dòng tiếp theo (nguyên âm gặp phải bao gồm), tại vị trí nằm ngang chính xác. Quy tắc này là đệ quy, có nghĩa là nếu có n nguyên âm trong từ, nó sẽ được viết trên n + 1 dòng.
Nguyên âm nên được viết ở đầu dòng tiếp theo, và không phải ở cuối dòng trước khi gặp phải.
Mỗi từ bắt đầu trên dòng đầu tiên và do đó nên được định dạng độc lập với các từ khác. Hai từ được phân cách bằng một khoảng trắng.
Nếu một từ bắt đầu bằng một nguyên âm, bạn phải viết nó bắt đầu trên dòng thứ hai.
Các trường hợp thử nghiệm
- Đầu vào:
Programming Puzzles and Code Golf
Đầu ra:
Pr P C G
ogr uzzl and od olf
amm es e
ing
- Đầu vào:
The quick brown fox jumps over the lazy dog
Đầu ra:
Th q br f j th l d
e u own ox umps ov e az og
ick er y
- Đầu vào:
aeiouy
Đầu ra:
a
e
i
o
u
y
- Đầu vào:
YEAh UppErcAsE VOwEls
Đầu ra:
V
Y Upp Ow
E Erc Els
Ah As
E
- Đầu vào:
If you only knew the power of the Dark Side
Đầu ra:
kn th p th D S
If y onl ew e ow of e ark id
o y er e
u
Chấm điểm
Đây là mã golf , vì vậy mã ngắn nhất sẽ thắng.
The vowel should be written at the beginning of the next line, and not at the end of the previous line when one is encountered.
Sau một số suy nghĩ, tôi hiểu rằng điều này có nghĩa là việc chuyển sang dòng tiếp theo sẽ xảy ra trước khi nguyên âm được in, không phải sau đó, nhưng có thể đáng để diễn đạt điều này theo cách dễ hiểu ngay lập tức - tôi phải mất một thời gian.