Lý lịch
Khi tôi còn học tiểu học, chúng tôi thường chơi một trò chơi trong lớp toán như sau.
Tất cả trẻ em ngồi trong một vòng tròn lớn và thay phiên nhau đếm, bắt đầu từ 1 .
Tuy nhiên, các số sau phải được bỏ qua trong khi đếm:
- Các số là bội số của 3 .
- Các số có 3 trong biểu diễn thập phân của nó.
15 số đầu tiên mà trẻ nên nói là
1 2 4 5 7 8 10 11 14 16 17 19 20 22 25
Bất cứ khi nào ai đó nhận được một số sai - nói một số không nằm trong chuỗi hoặc bỏ qua một số đó - anh ta sẽ bị xóa khỏi vòng tròn. Điều này diễn ra cho đến khi chỉ còn một đứa trẻ.
Bài tập, nhiệm vụ
Bạn rất tệ trong trò chơi này, vì vậy bạn quyết định gian lận. Viết chương trình hoặc hàm, cho một số thứ tự, tính toán số tiếp theo của chuỗi.
Bạn không phải xử lý các số không thể biểu diễn bằng loại số gốc của ngôn ngữ của mình, miễn là chương trình của bạn hoạt động chính xác đến đầu vào 251 và thuật toán của bạn hoạt động cho các đầu vào lớn tùy ý.
Đầu vào và đầu ra có thể sử dụng bất kỳ cơ sở thuận tiện.
Vì bạn phải che giấu mã của mình, nó phải càng ngắn càng tốt. Trong thực tế, đây là mã golf , vì vậy mã ngắn nhất tính bằng byte sẽ thắng.
Các trường hợp thử nghiệm
1 -> 2
2 -> 4
11 -> 14
22 -> 25
29 -> 40
251 -> 254
7
bị bỏ qua khi tôi chơi nó, nhưng bạn sẽ nói điều gì đó khác, thay vì đi đến số tiếp theo trong dòng.