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

วิธีตรวจสอบว่า 4 จำนวนเต็ม (ด้าน) สร้างเป็นสี่เหลี่ยมผืนผ้าได้ใน Python

ปัญหา

กำหนดรายการ 4 ด้าน ตรวจสอบว่าสามารถสร้างเป็นสี่เหลี่ยมผืนผ้าได้หรือไม่ (ต้องมีคู่ด้านตรงข้ามเท่ากัน)

ตัวอย่าง: [10, 30, 30, 10] → True (มีคู่ 10 และ 30)

แนวทางแก้ปัญหา

ตรวจสอบทุกกรณีที่เป็นไปได้ของคู่ด้าน:

  1. ทั้ง 4 ด้านเท่ากัน (สี่เหลี่ยมจัตุรัส)
  2. ด้านที่ 0=1 และ 2=3
  3. ด้านที่ 0=3 และ 2=1
  4. ด้านที่ 0=2 และ 3=1

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

def solve(sides):
    if sides[0] == sides[1] == sides[2] == sides[3]:
        return True
    elif sides[0] == sides[1] and sides[2] == sides[3]:
        return True
    elif sides[0] == sides[3] and sides[2] == sides[1]:
        return True
    elif sides[0] == sides[2] and sides[3] == sides[1]:
        return True
    return False

sides = [10, 30, 30, 10]
print(solve(sides))  # True

อินพุต / เอาต์พุต

Input: [10, 30, 30, 10]
Output: True