ในบทช่วยสอนนี้ เราจะพูดถึงโปรแกรมหาค่าสูงสุดของพื้นที่เล็กที่สุดที่เป็นไปได้ด้วยการตัดครั้งที่ 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