Tôi đã không kiểm tra hộp cát trước khi đăng thử thách này - có vẻ như thử thách này đã được đề xuất bởi Cᴏɴᴏʀ O'Bʀɪᴇɴ .
Đưa ra một đầu vào số nguyên, viết chương trình in câu đố "bốn là số ma thuật"
- Bốn là số ma thuật
- Năm là bốn và bốn là số ma thuật
- Sáu là ba và ba là năm và năm là bốn và bốn là số ma thuật
- Mười một là sáu và sáu là ba và ba là năm và năm là bốn và bốn là số ma thuật
- Five Hundred là mười một và mười một là sáu và sáu là ba và ba là năm và năm là bốn và bốn là số ma thuật
Nếu bạn đã biết câu đố, hoặc quá lười để giải quyết nó lo lắng để tìm hiểu câu đố là gì, đây là một lời giải thích
Số tiếp theo là số chữ cái trong số trước. Vì vậy, ví dụ, năm có bốn chữ cái, vì vậy số tiếp theo là bốn .
sáu có ba chữ cái, vì vậy số tiếp theo là 3 và ba có năm chữ cái, vì vậy số tiếp theo là 5 và năm có bốn chữ cái, vì vậy số tiếp theo là 4
Lý do câu đố kết thúc ở bốn là vì bốn có bốn chữ cái , và bốn là bốn và bốn là bốn và bốn là bốn ... (bốn là số ma thuật)
Các trường hợp thử nghiệm
0 =>
Zero is four and four is the magic number
1 =>
One is three and three is five and five is four and four is the magic number
2 =>
Two is three and three is five and five is four and four is the magic number
3 =>
Three is five and five is four and four is the magic number
4 =>
Four is the magic number
5 =>
Five is four and four is the magic number
6 =>
Six is three and three is five and five is four and four is the magic number
7 =>
Seven is five and five is four and four is the magic number
8 =>
Eight is five and five is four and four is the magic number
9 =>
Nine is four and four is the magic number
10 =>
Ten is three and three is five and five is four and four is the magic number
17 =>
Seventeen is nine and nine is four and four is the magic number
100 =>
One Hundred is ten and ten is three and three is five and five is four and four is the magic number
142 =>
One Hundred Forty Two is eighteen and eighteen is eight and eight is five and five is four and four is the magic number
1,000 =>
One Thousand is eleven and eleven is six and six is three and three is five and five is four and four is the magic number
1,642 =>
One Thousand Six Hundred Forty Two is twenty nine and twenty nine is ten and ten is three and three is five and five is four and four is the magic number
70,000 =>
Seventy Thousand is fifteen and fifteen is seven and seven is five and five is four and four is the magic number
131,072 =>
One Hundred Thirty One Thousand Seventy Two is thirty seven and thirty seven is eleven and eleven is six and six is three and three is five and five is four and four is the magic number
999,999 =>
Nine Hundred Ninety Nine Thousand Nine Hundred Ninety Nine is fifty and fifty is five and five is four and four is the magic number
Quy tắc
- Đầu vào có thể được lấy từ
STDIN
hoặc làm đối số cho hàm - Đầu vào sẽ là một số dương trong khoảng từ 0 đến 999.999
- Đầu vào sẽ chỉ chứa các số (nó sẽ theo regex
^[0-9]+$
) - Đầu vào có thể được lấy dưới dạng số nguyên hoặc chuỗi
- Khi được chuyển đổi thành một chuỗi từ, không nên bao gồm khoảng trắng và dấu gạch nối trong số đếm (100 [Một trăm] là 10 ký tự, không phải 11. 1.742 [Một nghìn Bảy trăm Bốn mươi hai] là 31 ký tự, không phải 36)
- Khi được chuyển đổi thành một chuỗi, 100 nên là Một trăm, không phải một trăm hoặc một trăm, 1000 nên là một nghìn, không phải là một ngàn hoặc một ngàn.
- Khi được chuyển đổi thành chuỗi 142 phải là Một trăm Bốn mươi hai, không phải Một trăm và Bốn mươi hai
- Đầu ra không phân biệt chữ hoa chữ thường và phải theo định dạng " N là K và K là M và M là ... và bốn là số ma thuật" (trừ khi đầu vào là 4, trong trường hợp đó, đầu ra chỉ đơn giản là "bốn là con số kỳ diệu ")
- Đầu ra có thể sử dụng số thay vì chữ cái ("5 là 4 và 4 là số ma thuật" thay vì "năm là bốn và bốn là số ma thuật") miễn là chương trình của bạn luôn nhất quán
- Đầu ra có thể là giá trị trả về của hàm hoặc được in ra
STDOUT
- Sơ hở tiêu chuẩn dụng
- Đây là môn đánh gôn , vì vậy chương trình ngắn nhất tính bằng byte sẽ thắng. Chúc may mắn!
Tiền thưởng
-30 byte nếu chương trình hoạt động khi đầu vào nằm trong khoảng -999.999 đến 999.999.
Các số âm, khi được chuyển đổi thành các từ, chỉ có "âm" ở phía trước chúng. Ví dụ: -4
"Bốn âm", Bốn âm là mười hai và mười hai là sáu và sáu là ba và ba là năm và năm là bốn và bốn là số ma thuật
-150 byte nếu chương trình không sử dụng bất kỳ hàm dựng sẵn nào để tạo biểu diễn chuỗi của số
Bảng xếp hạng
Đây là một Snippet Stack tạo ra cả bảng xếp hạng và tổng quan về người chiến thắng theo ngôn ngữ.
Để đảm bảo câu trả lời của bạn hiển thị, vui lòng bắt đầu câu trả lời của bạn bằng một tiêu đề bằng cách sử dụng mẫu Markdown sau
## Language Name, N bytes
Trong đó N là kích thước, tính bằng byte, của trình của bạn
Nếu bạn muốn bao gồm nhiều số trong tiêu đề của mình (ví dụ: vượt qua các điểm số cũ hoặc bao gồm các cờ trong số byte), chỉ cần đảm bảo rằng điểm thực tế là số cuối cùng trong tiêu đề của bạn
## Language Name, <s>K</s> X + 2 = N bytes