โจทย์: กำหนดอาร์เรย์ ตรวจสอบว่าเป็น Monotonic (เพิ่มขึ้นต่อเนื่องหรือลดลงต่อเนื่อง) หรือไม่
นิยามทางคณิตศาสตร์: - เพิ่มต่อเนื่อง: สำหรับทุก i ≤ j, A[i] ≤ A[j] - ลดต่อเนื่อง: สำหรับทุก i ≤ j, A[i] ≥ A[j]
ตรวจสอบโดยดูคู่ติดกันทุกคู่ ว่าเป็นเพิ่มหรือลดอย่างใดอย่างหนึ่งตลอด
โค้ดตัวอย่าง
def isMonotonic(A):
return (all(A[i] <= A[i + 1] for i in range(len(A) - 1)) or
all(A[i] >= A[i + 1] for i in range(len(A) - 1)))
A = [1, 2, 3, 4, 7, 8]
print(isMonotonic(A))
ผลลัพธ์
True

สรุป
เรียนรู้วิธีตรวจสอบ Monotonic Array ใน Python: ใช้ all() กับ generator expression เช็คทิศทางเพิ่ม/ลด