พื้นหลัง
เมื่อฉันอยู่ในโรงเรียนประถมเราเคยเล่นเกมในชั้นเรียนคณิตศาสตร์ที่มีดังต่อไปนี้
เด็กทุกคนนั่งอยู่ในวงกลมขนาดใหญ่และผลัดกันนับเริ่มต้นจาก1
อย่างไรก็ตามต้องข้ามตัวเลขต่อไปนี้ขณะนับ:
- เบอร์ที่มีหลายรายการที่ 3
- ตัวเลขที่มี3ในการแทนทศนิยม
ตัวเลข 15 อันดับแรกที่เด็กควรพูดคือ
1 2 4 5 7 8 10 11 14 16 17 19 20 22 25
เมื่อใดก็ตามที่ใครบางคนผิดตัวเลข - พูดหมายเลขที่ไม่ได้อยู่ในลำดับหรือข้ามหมายเลขนั่นคือ - เขาถูกนำออกจากวงกลม สิ่งนี้จะดำเนินต่อไปจนกว่าจะมีเด็กเหลือเพียงคนเดียว
งาน
คุณเล่นเกมนี้ไม่ดีคุณจึงตัดสินใจโกง เขียนโปรแกรมหรือฟังก์ชั่นที่ให้ลำดับของตัวเลขคำนวณหาลำดับถัดไป
คุณไม่ต้องจัดการกับตัวเลขที่ไม่สามารถแสดงได้โดยใช้ชนิดตัวเลขดั้งเดิมของภาษาของคุณโดยที่โปรแกรมของคุณทำงานอย่างถูกต้องจนถึงอินพุต251และอัลกอริทึมของคุณทำงานกับอินพุตขนาดใหญ่โดยพลการ
อินพุตและเอาต์พุตสามารถใช้ฐานใดก็ได้ที่สะดวก
เมื่อคุณต้องปกปิดรหัสของคุณมันจะต้องสั้นที่สุด ความจริงแล้วนี่คือcode-golfดังนั้นโค้ดที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ
กรณีทดสอบ
1 -> 2
2 -> 4
11 -> 14
22 -> 25
29 -> 40
251 -> 254
7
ที่ข้ามเมื่อฉันเล่นมัน แต่คุณจะพูดอย่างอื่นแทนแทนที่จะไปที่หมายเลขต่อไปในบรรทัด