ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมเพื่อค้นหาพื้นที่สูงสุดที่เล็กที่สุดที่สามารถตัดได้ k ของสี่เหลี่ยมที่กำหนด
สำหรับสิ่งนี้เราจะได้รับด้านข้างของสี่เหลี่ยมผืนผ้าและจำนวนการตัดที่สามารถทำได้ งานของเราคือการคำนวณพื้นที่ที่เล็กที่สุดที่สามารถทำได้โดยจำนวนการตัดที่กำหนด
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; void max_area(int n, int m, int k) { if (k > (n + m - 2)) cout << "Not possible" << endl; else { int result; if (k < max(m, n) - 1) { result = max(m * (n / (k + 1)), n * (m / (k + 1))); } else { result = max(m / (k - n + 2), n / (k - m + 2)); } cout << result << endl; } } int main() { int n = 3, m = 4, k = 1; max_area(n, m, k); return 0; }
ผลลัพธ์
6