คำปฏิเสธ
คำถามนี้ไม่ซ้ำกับคำถามนี้ ฉันไม่ได้นับตัวเลขเฉพาะเนื่องจากเรามีการตั้งค่าเหล่านั้นไว้ในพารามิเตอร์เริ่มต้นแล้ว คำถามนี้มุ่งเน้นไปที่ตัวเลขทศนิยมที่สามารถสร้างได้จากสตริงไบนารีตามตัวเลขที่ให้ไว้
ท้าทาย
กำหนดจำนวนเต็มสองจำนวนX
และY
แสดงจำนวนศูนย์ ( 0
) และคน ( 1
) ตามลำดับคำนวณจำนวนเทียบเท่าทศนิยมที่เป็นไปได้ทั้งหมดที่สามารถกำหนดได้จากการสร้างสตริงไบนารีโดยใช้เฉพาะเลขศูนย์และคนที่ให้และแสดงเป็นเอาท์พุท
ตัวอย่างที่ 1:
การป้อนข้อมูล: 0 1
เอาท์พุท: 1
คำอธิบาย: มีเพียง1
บัญชีเดียวเท่านั้นที่สามารถทำการแปลงได้ทางเดียวเท่านั้น
ตัวอย่างที่ 2:
การป้อนข้อมูล: 1 1
เอาท์พุท: 1,2
คำอธิบาย: 01
แปลงเป็น 1, 10
แปลงเป็น 2
ตัวอย่างที่ 3:
การป้อนข้อมูล: 3 2
เอาท์พุท: 3,5,6,9,10,12,17,18,20,24
คำอธิบาย: สาม0
และสอง1
ยี่ห้อ00011
(3), 00101
(5), 00110
(6), 01001
(9), 01010
(10), 01100
(12), 10001
(17), 10010
(18), 18 10100
(20), 11000
(24)
ข้อ จำกัด และกฎ
- ฉันเท่านั้นที่จะคาดหวังว่ารหัสของคุณในการทำงานที่
0 < X + Y <= 16
ดังนั้นจำนวนสูงสุดในการส่งออกเพียงอย่างเดียวอาจเกิดขึ้นตั้งแต่วันที่ 161
s พารามิเตอร์เช่นและ0
16
- อันเป็นผลมาจากข้อ จำกัด ข้างต้นช่วงของตัวเลขที่เราคาดหวังในการส่งออกจากและ
0
65535
- ฉันจะรับฟังก์ชั่นหรือรหัสตราบใดที่มีการส่งออกผลลัพธ์ไม่ว่าจะเป็นรายการที่คั่นด้วยเครื่องหมายจุลภาค, อาร์เรย์, รายการที่ส่งออกไปยัง STDOUT เป็นต้นเกณฑ์เดียวที่ฉันต้องเน้นเกี่ยวกับผลลัพธ์คือต้องเรียงลำดับ
- นี่คือโค้ดกอล์ฟไบต์ต่ำสุดจะได้รับเกียรติสูงสุด
- เราจะไม่ยอมให้ช่องโหว่โง่ ๆ
0 0
หรือไม่?
0 <= X + Y <= 16
ใช่เพราะ0 0
จะถือว่าเป็นข้อมูลที่ถูกต้องซึ่งเป็นไปตามกฎนั้น
0 0
คืออะไร เลข0สามารถแสดงเป็นศูนย์ได้ศูนย์หนึ่งศูนย์ขึ้นไป