Đây là câu hỏi đầu tiên của tôi ở đây, vì vậy bất kỳ đề xuất trong các ý kiến sẽ được đánh giá cao! Cảm ơn ;)
Giới thiệu
Một chiến lược rất phổ biến cho trò chơi năm 2048 là không bao giờ bị trượt xuống . Vị trí này tất cả các số lớn ở trên cùng và những số thấp hơn ở phía dưới. Vì vậy, nếu bạn áp dụng chiến lược này một cách chính xác, bảng của bạn sẽ luôn khớp với mẫu sau:
Mẫu để kiểm tra / Nhiệm vụ của bạn
Nội dung gửi của bạn phải là một chương trình đầy đủ hoặc một hàm trả về giá trị trung thực nếu bảng có thể được mô tả như thế này: Đi xuống từng cột của bảng, số đầu tiên phải là số cao nhất của cột, số thứ hai sẽ ít hơn hơn hoặc bằng số đầu tiên, v.v ... Một bảng 2048 tốt được định nghĩa là một bảng trong đó các số cao nhất đều nằm trên cùng. Đây là môn đánh gôn , vì vậy Mã ngắn nhất cho mỗi ngôn ngữ (tính bằng byte) sẽ thắng.
Tôi / O
Đầu vào có thể được thực hiện theo bất kỳ cách thích hợp nào, ví dụ một mảng gồm 4 mảng, mỗi mảng chứa 4 số hoặc một mảng gồm 16 số. Tổng cộng, nó sẽ luôn là 16 số, đại diện cho bảng mạch 4 Đầu ra phải là giá trị trung thực của đầu vào là "bảng 2048 tốt" và ngược lại là giá trị giả.
Ví dụ
Sự thật:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 8 |
|-------------------|
| 4 | | 32 | 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 128| 32 | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
Giả mạo:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 16 |
|-------------------|
| 32 | | 128| 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 32| | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
chú thích
Nhìn vào trường hợp thử nghiệm giả thứ 2: Khi có một giá trị trống (hoặc 0) ở đâu đó và ngay cả khi nó được theo sau bởi một giá trị cao hơn số khác không cuối cùng, thì giá trị này sẽ bị sai, bởi vì giá trị tiếp theo sau số 0 sẽ cao hơn chính 0, làm cho nó không hợp lệ.
Chúc may mắn!