โดยไม่ต้องใช้สตริง (ยกเว้นเมื่อจำเป็นเช่นกับอินพุทหรือเอาท์พุท) คำนวณตัวเลขที่ n จากทางซ้ายของจำนวนเต็ม (ในฐาน 10)
อินพุตจะได้รับในรูปแบบนี้:
726433 5
ผลลัพธ์ควรเป็น:
3
ตามที่เป็นหลักที่ห้าของ "726433"
ข้อมูลที่ป้อนจะไม่มีศูนย์นำหน้าเช่น "00223"
กรณีทดสอบ / ตัวอย่างเพิ่มเติม:
9 1 -> 9
0 1 -> 0
444494 5 -> 9
800 2 -> 0
นี่คือรหัสกอล์ฟ จำนวนน้อยที่สุดของการชนะตัวอักษร แต่สร้างใด ๆ ในฟังก์ชั่นเช่น "nthDigit (x, n)" เป็นที่ยอมรับไม่ได้
นี่คือโค้ดหลอกบางอย่างที่จะช่วยคุณเริ่มต้นใช้งาน:
x = number
n = index of the digit
digits = floor[log10[x]] + 1
dropRight = floor[x / 10^(digits - n)]
dropLeft = (dropRight / 10 - floor[dropRight / 10]) * 10
nthDigit = dropLeft
อย่างที่คุณเห็นฉันเป็นนักกอล์ฟมือใหม่และถึงแม้ว่าฉันคิดว่ามันค่อนข้างไม่ยุติธรรมเลยที่ฉันจะถามคำถามก่อนที่ฉันจะตอบแม้แต่คนเดียว :)
แก้ไข : ฉันหวังว่าจะได้คำตอบทางคณิตศาสตร์ดังนั้นฉันจึงไม่สามารถยอมรับคำตอบที่ต้องพึ่งพาการแปลงสตริงเป็นอาร์เรย์หรือสามารถเข้าถึงตัวเลขเป็นรายการตัวเลขได้
เรามีผู้ชนะ
เขียนเป็น "dc" ขนาด12ไบต์ โดยDigitalTrauma