Một số tự (còn gọi là số Colombia hoặc Devlali) là một số tự nhiên, x
nơi phương trình n + <digit sum of n> = x
không có giải pháp cho bất kỳ số tự nhiên n
. Ví dụ, 21 không phải là một số tự, như n = 15
kết quả trong 15 + 1 + 5 = 21
. Mặt khác, 20 là một số tự, vì không n
thể tìm thấy nó thỏa mãn một đẳng thức như vậy.
Vì định nghĩa này tham chiếu tổng số, nó phụ thuộc vào cơ sở. Đối với mục đích của thử thách này, chúng tôi sẽ chỉ xem xét các số tự cơ bản 10, là chuỗi A003052 trong OEIS. Số tự nhị phân ( A010061 ) và cơ sở 100 ( A283002 ) cũng đã được ghi lại.
Các thách thức
Cho một số nguyên dương x
làm đầu vào, xuất giá trị trung thực nếu x
là số tự trong cơ sở 10 và giá trị falsey khác. Để làm rõ các giá trị trung thực và falsey, hãy tham khảo bài đăng meta này về chủ đề này .
Bạn có thể viết một chương trình hoặc chức năng đầy đủ, đầu vào và đầu ra có thể được cung cấp trên bất kỳ kênh thông thường nào. Tất nhiên, sơ hở là bị cấm.
Đây là môn đánh gôn , vì vậy câu trả lời của bạn (tính bằng byte) càng ngắn càng tốt!
Các trường hợp thử nghiệm
Sự thật:
1
3
5
7
9
20
31
86
154
525
Falsey:
2
4
6
8
10
15
21
50
100
500
Bảng xếp hạng
Dưới đây là Stack Snippet để tạo cả bảng xếp hạng thông thường và tổng quan về người chiến thắng theo ngôn ngữ.
Để đảm bảo rằng 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 đề, sử dụng mẫu Markdown sau:
# Language Name, N bytes
nơi N
là kích thước của trình của bạn. Nếu bạn cải thiện điểm số của mình, bạn có thể giữ điểm số cũ trong tiêu đề, bằng cách đánh bại chúng thông qua. Ví dụ:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Nếu ở đó bạn muốn bao gồm nhiều số trong tiêu đề của mình (ví dụ: vì điểm của bạn là tổng của hai tệp hoặc bạn muốn liệt kê riêng các hình phạt cờ phiên dịch), hãy đảm bảo rằng điểm thực tế là số cuối cùng trong tiêu đề:
# Perl, 43 + 2 (-p flag) = 45 bytes
Bạn cũng có thể đặt tên ngôn ngữ thành liên kết sau đó sẽ hiển thị trong đoạn trích bảng xếp hạng:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes