Các Cheela (từ cuốn sách Dragon Egg bởi Robert L. Forward) là những sinh vật sống trên bề mặt của một ngôi sao neutron. Cơ thể của chúng phẳng và tròn với mười hai mắt trên chu vi, vì vậy chúng tự nhiên sử dụng hệ thống đánh số cơ sở 12.
Trong số các Cheela, chăm sóc chim con và giáo dục trẻ là những nhiệm vụ được thực hiện bởi Người già. Vì Cheela trẻ cần được dạy cách nhân lên, Người già có thể sử dụng bảng nhân.
Nhiệm vụ của bạn là tạo ra một bảng nhân 12
x 12
trong cơ sở 12
, như sau. Chữ in hoa A
và B
được sử dụng cho các chữ số tương ứng với số thập phân 10
và 11
tương ứng.
1 2 3 4 5 6 7 8 9 A B 10
2 4 6 8 A 10 12 14 16 18 1A 20
3 6 9 10 13 16 19 20 23 26 29 30
4 8 10 14 18 20 24 28 30 34 38 40
5 A 13 18 21 26 2B 34 39 42 47 50
6 10 16 20 26 30 36 40 46 50 56 60
7 12 19 24 2B 36 41 48 53 5A 65 70
8 14 20 28 34 40 48 54 60 68 74 80
9 16 23 30 39 46 53 60 69 76 83 90
A 18 26 34 42 50 5A 68 76 84 92 A0
B 1A 29 38 47 56 65 74 83 92 A1 B0
10 20 30 40 50 60 70 80 90 A0 B0 100
Shoud đầu ra được in trên màn hình. Các định dạng nên như sau:
- Các số phải được căn bên phải trong mỗi cột.
- Không gian hàng đầu trước cột đầu tiên, dấu cách sau cột cuối cùng hoặc một dòng mới sau hàng cuối cùng được cho phép.
Tách giữa các cột có thể là một khoảng trắng (như được hiển thị ở trên) hoặc nhiều hơn một khoảng trắng, nhưng số lượng khoảng trắng phải nhất quán giữa các cột. Để đo tách cột, hãy xem xét rằng các số được hiển thị bao gồm bất kỳ khoảng trắng hàng đầu nào có thể cần thiết để thực hiện yêu cầu 1 (vì vậy mỗi số chiếm ba ký tự, đầu tiên có thể là khoảng trắng). Ví dụ: bảng có phân tách hai không gian sẽ như sau:
1 2 3 4 5 6 7 8 9 A B 10 2 4 6 8 A 10 12 14 16 18 1A 20 3 6 9 10 13 16 19 20 23 26 29 30 4 8 10 14 18 20 24 28 30 34 38 40 5 A 13 18 21 26 2B 34 39 42 47 50 6 10 16 20 26 30 36 40 46 50 56 60 7 12 19 24 2B 36 41 48 53 5A 65 70 8 14 20 28 34 40 48 54 60 68 74 80 9 16 23 30 39 46 53 60 69 76 83 90 A 18 26 34 42 50 5A 68 76 84 92 A0 B 1A 29 38 47 56 65 74 83 92 A1 B0 10 20 30 40 50 60 70 80 90 A0 B0 100
Lưu trữ máy tính trên một ngôi sao neutron thực sự tốn kém, vì vậy mã của bạn nên sử dụng càng ít byte càng tốt.
Thử thách mở rộng và tiền thưởng
Lý tưởng nhất là mã của bạn nên được sử dụng lại trong các phần khác của vũ trụ, nơi các hệ thống đánh số khác có thể được sử dụng. Cuối cùng, thách thức được mở rộng tùy chọn như sau: Mã của bạn chấp nhận một số N
làm đầu vào và tạo bảng nhân N
x N
trong cơ sở N
, với định dạng trên.
Đầu vào có thể từ bàn phím hoặc như là một đối số chức năng. Chương trình hoặc chức năng nên làm việc cho 2
≤ N
≤ 36
, sử dụng như chữ số đầu tiên N
nhân vật của dãy 0
, 1
, ..., 9
, A
, B
, ..., Z
(viết hoa chữ cái)
Thử thách mở rộng này là tùy chọn. Nếu bạn theo lộ trình này, hãy giảm 20% số byte của bạn (không cần làm tròn đến số nguyên).
Because they have twelve eyes, they naturally use a base-12 numbering system.
Vâng, tự nhiên. Đó là lý do tại sao chúng tôi sử dụng nhị phân, sau tất cả ... ;-)