Logic ternary cân bằng
Ternary là bình thường một tên khác cho cơ sở 3, có nghĩa là phải nói, mỗi chữ số là 0
, 1
hoặc 2
, và mỗi nơi có giá trị 3 lần so với địa điểm tiếp theo.
Ternary cân bằng là một sửa đổi của ternary sử dụng các chữ số của -1
, 0
và 1
. Điều này có lợi thế là không cần một dấu hiệu. Mỗi nơi vẫn có giá trị gấp 3 lần so với nơi tiếp theo. Do đó, vài nguyên dương đầu tiên là [1]
, [1, -1]
, [1, 0]
, [1, 1]
, [1, -1, -1]
trong khi vài số nguyên âm đầu tiên là [-1]
, [-1, 1]
, [-1, 0]
, [-1, -1]
, [-1, 1, 1]
.
Bạn có ba đầu vào x, y, z
. z
là một trong hai -1
, 0
hoặc 1
, trong khi x
và y
có thể từ -3812798742493
để 3812798742493
toàn diện.
Bước đầu tiên là chuyển đổi x
và y
từ thập phân sang ternary cân bằng. Điều này sẽ cung cấp cho bạn 27 trits (TeRnary digITS). Sau đó, bạn phải kết hợp các đặc điểm từ x
và y
theo cặp bằng cách sử dụng thao tác ternary và sau đó chuyển kết quả trở lại thành số thập phân.
Bạn có thể chọn các giá trị của z
bản đồ cho một trong ba hoạt động sau này mỗi:
A
: Cho hai điểm, nếu một trong hai bằng 0, thì kết quả bằng 0, nếu không thì kết quả là -1 nếu chúng khác nhau hoặc 1 nếu chúng giống nhau.B
: Cho hai trits, nếu một trong hai bằng 0, thì kết quả là trit khác, nếu không thì kết quả bằng 0 nếu chúng khác nhau hoặc phủ định nếu chúng giống nhau.C
: Cho hai điểm, kết quả bằng 0 nếu chúng khác nhau hoặc giá trị của chúng nếu chúng giống nhau.
Thí dụ. Giả sử x
là 29
và y
là 15
. Trong ternary cân bằng, những trở thành [1, 0, 1, -1]
và [1, -1, -1, 0]
. (23 điểm không còn lại đã bị bỏ qua vì ngắn gọn.) Sau mỗi thao tác tương ứng, chúng trở thành A
: [1, 0, -1, 0]
, B
: [-1, -1, 0, -1]
, C
: [1, 0, 0, 0]
. Chuyển đổi trở lại thập phân kết quả 24
, -37
và 27
tương ứng. Hãy thử thực hiện tham chiếu sau đây để biết thêm ví dụ:
Việc thực hiện tham chiếu tuân theo các bước được đưa ra ở trên nhưng tất nhiên bạn có thể sử dụng bất kỳ thuật toán nào tạo ra kết quả tương tự.
Đây là môn đánh gôn , vì vậy chương trình hoặc chức năng ngắn nhất vi phạm không có sơ hở tiêu chuẩn nào thắng!
z
phải là một trong -1,0,1
hoặc chúng ta có thể chọn bất kỳ ba giá trị phù hợp và khác biệt? Tôi đã chọn 1,2,3
trong câu trả lời của mình và có một số nhầm lẫn về nó.