Latar Belakang
Ketika saya masih di sekolah dasar, kami biasa bermain game di kelas matematika yang berlangsung sebagai berikut.
Semua anak duduk dalam lingkaran besar dan bergiliran menghitung, mulai dari 1 .
Namun, angka-angka berikut harus dilewati saat menghitung:
- Angka yang merupakan kelipatan dari 3 .
- Angka yang memiliki angka 3 dalam representasi desimalnya.
15 angka pertama yang harus dikatakan anak-anak adalah
1 2 4 5 7 8 10 11 14 16 17 19 20 22 25
Setiap kali seseorang mendapatkan nomor yang salah - mengatakan angka yang tidak ada dalam urutan atau melompati angka yang ada - dia dikeluarkan dari lingkaran. Ini berlangsung sampai hanya ada satu anak yang tersisa.
Tugas
Anda buruk dalam permainan ini, jadi Anda memutuskan untuk curang. Tulis sebuah program atau fungsi yang, mengingat sejumlah urutan, menghitung jumlah urutan berikutnya.
Anda tidak harus menangani angka yang tidak dapat direpresentasikan menggunakan tipe numerik asli bahasa Anda, asalkan program Anda berfungsi dengan benar hingga input 251 dan algoritma Anda bekerja untuk input besar yang sewenang-wenang.
Input dan output dapat menggunakan basis yang nyaman.
Karena Anda harus menyembunyikan kode Anda, itu harus sesingkat mungkin. Sebenarnya, ini adalah kode-golf , jadi kode terpendek dalam byte menang.
Uji kasus
1 -> 2
2 -> 4
11 -> 14
22 -> 25
29 -> 40
251 -> 254
7
yang dilewati ketika saya memainkannya, tetapi Anda akan mengatakan hal lain, alih-alih pergi ke nomor berikutnya dalam barisan.