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

โค้ด C++ หาจำนวนโคมไฟขั้นต่ำเพื่อส่องสว่างพื้น

สมมติว่ามีพื้นที่แบ่งเป็นกริดขนาด n แถว และ m คอลัมน์ ต้องใช้โคมไฟส่องสว่าง โคมไฟที่วางที่ขอบระหว่างสองเซลล์จะส่องสว่างได้สองเซลล์ หากวางที่ขอบแนวตั้ง จะส่องซ้าย-ขวา หากวางที่ขอบแนวนอน จะส่องหน้า-หลัง กำหนด n และ m ให้หาจำนวนโคมไฟขั้นต่ำที่ต้องใช้เพื่อส่องสว่างพื้นทั้งหมด

เช่น ถ้าค่าที่ป้อนเข้าเป็น n = 5, m = 3 ผลลัพธ์จะได้ 8

ขั้นตอนการแก้ปัญหา

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนดังนี้:

res := (n * m + 1) / 2 คืนค่า res

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

ดูการนำไปใช้จริงด้านล่างเพื่อความเข้าใจที่ดียิ่งขึ้น:

#include <bits/stdc++.h> using namespace std; #define N 100 int solve(int n, int m) {    int res = (n * m + 1) / 2;    return res; } int main() {    int n = 5, m = 3;    cout<< solve(n, m);    return 0; }

ข้อมูลนำเข้า

5, 3

ข้อมูลส่งออก

8