การป้อนข้อมูล:
รายการ / 2-36
อาร์เรย์ของจำนวนเต็มซึ่งแต่ละรายการอยู่ในช่วงของ
เอาท์พุท:
ผลรวมของจำนวนเต็ม (เป็นฐาน 10) โดยที่แต่ละจำนวนเต็มถัดไปอยู่ในฐานของค่าก่อนหน้า (เริ่มต้นด้วยฐานปกติ 10)
ตัวอย่าง:
สมมติว่าเรามีอินพุตดังนี้: [4, 12, 34, 20, 14, 6, 25, 13, 33]
จากนั้นเรามีผลรวมดังนี้:
4 (4 in base-10) +
6 (12 in base-4 ) +
40 (34 in base-12) +
68 (20 in base-34) +
24 (14 in base-20) +
6 (6 in base-14) +
17 (25 in base-6 ) +
28 (13 in base-26) +
42 (33 in base-13)
= 235
ฐานทางคณิตศาสตร์อธิบาย:
ฉันถือว่าสมมติว่าทุกคนรู้วิธีการทำงานของฐาน แต่ฉันจะให้ตัวอย่างสั้น ๆ ของวิธีการทำงานอย่างไรก็ตามในกรณี ลอง34 in base-12
ยกตัวอย่างเราจะได้40
อย่างไร
1-34 in regular base-10:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34
So, from 1 to 34 is 34 steps in base-10
1-34 in base-12:
1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2A, 2B, 30, 31, 32, 33, 34
So, from 1 to 34 is 40 steps in base-12
นี่อาจเป็นเครื่องคิดเลขที่มีประโยชน์
กฏท้าทาย:
- ขนาดอาร์เรย์จะอยู่ในช่วงที่เหมาะสม (เช่น
1-100
/ ดูกรณีทดสอบ) - กรณีทดสอบจะไม่มีเลขจำนวนเต็มซึ่งค่าปัจจุบันไม่ถูกต้องเพราะเป็นฐานก่อนหน้า (เช่นคุณจะไม่มีวันคล้าย
19 in base-6
หรือ6 in base-6
เพราะ base-6 มีตัวเลข0-5
เท่านั้น) - คุณสามารถป้อนข้อมูลในแบบที่คุณต้องการ สามารถเป็น int-array, เป็นสตริงที่คั่นด้วยเครื่องหมายจุลภาค / เว้นวรรค, ฯลฯ การโทรของคุณ (นอกจากนี้คุณยังได้รับอนุญาตให้ย้อนกลับ int-array ซึ่งอาจเป็นประโยชน์สำหรับภาษาการเขียนโปรแกรมแบบกองซ้อน)
กฎทั่วไป:
- นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ
อย่าปล่อยให้ภาษารหัสกอล์ฟกีดกันคุณจากการโพสต์คำตอบด้วยภาษาที่ไม่ใช่กอล์ฟ พยายามหาคำตอบสั้น ๆ สำหรับภาษาการเขียนโปรแกรมใด ๆ - กฎมาตรฐานจะใช้สำหรับคำตอบของคุณดังนั้นคุณจึงได้รับอนุญาตให้ใช้ STDIN / STDOUT ฟังก์ชัน / เมธอดพร้อมพารามิเตอร์ที่เหมาะสมโปรแกรมเต็มรูปแบบ การโทรของคุณ
- ช่องโหว่เริ่มต้นเป็นสิ่งต้องห้าม
- หากเป็นไปได้โปรดเพิ่มลิงค์พร้อมทดสอบรหัสของคุณ
- นอกจากนี้โปรดเพิ่มคำอธิบายหากจำเป็น
กรณีทดสอบ:
[4, 12, 34, 20, 14, 6, 25, 13, 33] -> 235
4+ 6+ 40+ 68+ 24+ 6+ 17+ 28+ 42
[5, 14, 2, 11, 30, 18] -> 90
5+ 9+ 2+ 3+ 33+ 38
[12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 12, 2, 11, 3, 10, 2, 10] -> 98
12+ 13+ 11+ 9+ 8+ 7+ 6+ 5+ 4+ 3+ 5+ 2+ 3+ 3+ 3+ 2+ 2
[36, 36] -> 150
36+ 114