สมมติว่าเรามีช่วงของต้นทุนตั้งแต่ต้นทุนต่ำไปจนถึงต้นทุนต้นทุนสูง และช่วงปริมาณอื่นจาก lowQuant ถึง upQuant เราต้องตรวจสอบว่าเราสามารถหาอัตราส่วนที่กำหนดได้หรือไม่ โดยที่ r=cost/quantity และต้นทุนต่ำ ⇐ ต้นทุน ⇐ ต้นทุนที่เพิ่มขึ้น และ ปริมาณต่ำ ⇐ ปริมาณ ⇐ ปริมาณที่เพิ่มขึ้น
ดังนั้น หากอินพุตเป็นเหมือน lowCost =2, upCost =10, lowQuant =3, upQuant =9 และ r =3 ผลลัพธ์จะเป็น True เนื่องจากต้นทุน =r * ปริมาณ =3 * 3 =9 โดยที่ต้นทุนอยู่ใน ช่วง [1, 10] และปริมาณอยู่ใน [2, 8]
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
-
สำหรับฉันอยู่ในช่วง l_quant ถึง u_quant ทำ
-
res :=i * อัตราส่วน
-
ถ้า l_cost ⇐ res และ res ⇐ u_cost แล้ว
-
คืนค่า True
-
-
-
คืนค่าเท็จ
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
def can_we_find_r(l_cost, u_cost, l_quant, u_quant, ratio) : for i in range(l_quant, u_quant + 1) : res = i * ratio if (l_cost <= res and res <= u_cost) : return True return False l_cost = 2 u_cost = 10 l_quant = 3 u_quant = 9 ratio = 3 print(can_we_find_r(l_cost, u_cost,l_quant,u_quant, ratio))
อินพุต
2, 10, 3, 9, 3
ผลลัพธ์
True