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

โปรแกรมหาตำแหน่งเลขคู่แรกของบรรทัด l ในสามเหลี่ยมตัวเลข ใน Python

สร้างสามเหลี่ยมตัวเลขที่แต่ละแถวสร้างจากการบวก 3 ตัวเลขด้านบน:

      1
      1 1 1
    1 2 3 2 1
  1 3 6 7 6 3 1

กำหนดหมายเลขบรรทัด l หาตำแหน่งของเลขคู่แรกในบรรทัดนั้น (ตำแหน่งเริ่มจาก 1)

เช่น l = 5 ผลลัพธ์คือ 2

วิธีแก้ปัญหา

  • ถ้า l == 1 หรือ l == 2: คืนค่า -1
  • มิฉะนั้นถ้า l mod 2 == 0
    • ถ้า l mod 4 == 0: คืนค่า 3
    • มิฉะนั้น: คืนค่า 4
  • มิฉะนั้น: คืนค่า 2

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

def solve(l):
    if l == 1 or l == 2:
        return -1
    elif l % 2 == 0:
        if l % 4 == 0:
            return 3
        else:
            return 4
    else:
        return 2

l = 5
print(solve(l))

Input

5

Output

2