Ẇa6ḌạÐṂ⁸Ṫ
Một liên kết đơn âm.
Hãy thử trực tuyến! - Hầu như không có điểm nào trong liên kết này (xem bên dưới)!
Làm sao?
Theo phong cách của những người chơi gôn thực sự, điều này thực sự không hiệu quả - nó đã hết thời gian 60 năm tại TIO cho trường hợp thử nghiệm 365 ! Tại địa phương này kết thúc trong 37s.
Ẇa6ḌạÐṂ⁸Ṫ - Main link: n
Ẇ - all sublists - this has an implicit make_range on it's input
- so, for example, an input of 3 yields [[1],[2],[3],[1,2],[2,3],[1,2,3]]
- the important things are: that it contains both a list of the length of the
- decimal number, and a list 1 shorter; and that it's lists only contain
- non-zero numbers and are monotonically increasing in length.
6 - literal 6
a - and (vectorises), this changes all the values to 6s
- so, the example above becomes [[6],[6],[6],[6,6],[6,6],[6,6,6]]
Ḍ - convert to decimal (vectorises) [ 6, 6,, 6, 66, 66, 666 ]
⁸ - link's right argument, n
ÐṂ - filter keep those with minimal:
ạ - absolute difference (for 366 this keeps 66 AND 666; same goes for 3666; etc.)
Ṫ - tail - get the rightmost result (for 366 keeps 666, since it's longer)
Một miếng vá để làm cho chạy thuật toán tương tự trong những năm 60 hạn chế cho 365 và 366 trên TIO là để tránh vectorisation ngầm của Ḍ
với Ẇa6Ḍ€ạÐṂ⁸Ṫ
( thử mà ), tuy nhiên điều này bây giờ sẽ seg-lỗi cho một đầu vào của 999 ( Triangle (999) chỉ là 499.500 nhưng mỗi số là một danh sách các số nguyên, tạo ra tổng số tứ diện (999) = 166.666.500 số nguyên, không hiệu quả về bộ nhớ, ít nhất là bằng Python).