Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python หาความยาว 1 ติดกันมากที่สุดในไบนารี

กำหนดตัวเลข หาความยาวของ 1 ติดกันมากที่สุดในรูปแบบไบนารี

ตัวอย่าง

Input: n = 15
Output: 4
ไบนารีของ 14 คือ 1111

อัลกอริทึม

ขั้นตอนที่ 1: รับตัวเลข
ขั้นตอนที่ 2: ใช้ตัวแปรนับ c=0
ขั้นตอนที่ 3: นับจำนวนรอบเพื่อให้ i = 0
ขั้นตอนที่ 4: การดำเนินการนี้ลดความยาวของลำดับ 1 ทีละหนึ่ง

โค้ดตัวอย่าง

# โปรแกรม Python หาความยาว 1 ติดกันมากที่สุดในไบนารี
def maxlength(n):
    # เริ่มต้นผลลัพธ์
    c = 0
    # นับจำนวนรอบจน x = 0
    while (n != 0):
        # การดำเนินการนี้ลดความยาวลำดับ 1 ทีละหนึ่ง
        n = (n & (n << 1))
        c = c + 1
    return c

# โค้ดหลัก
n = int(input("ป้อนตัวเลข ::>"))
print("ความยาวสูงสุดของ 1 ::>", maxlength(n))

ผลลัพธ์

ป้อนตัวเลข ::>15
ความยาวสูงสุดของ 1 ::>4