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

โค้ด C++ นับสมุดบันทึกสำหรับทำโอริกามิ n ชิ้น

สมมติว่าเรามีตัวเลขสองจำนวน n และ k ในงานเลี้ยงมีเพื่อนเชิญ n คน อมลทำบัตรเชิญเป็นโอริกามิ แต่ละบัตรต้องการกระดาษแดง 2 ใบ เขียว 5 ใบ น้ำเงิน 8 ใบ มีสมุดบันทึกสีละสีไม่จำกัด แต่ละสมุดมีกระดาษสีเดียว k ใบ หาสมุดน้อยสุดที่ต้องซื้อเชิญเพื่อน n คน

เช่น ถ้าอินพุตคือ n = 3; k = 5 เอาต์พุตจะเป็น 10 เพราะต้องการสมุดแดง 2 เล่ม เขียว 3 เล่ม น้ำเงิน 5 เล่ม

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

(2 * n + k - 1) / k + (5 * n + k - 1) / k + (8 * n + k - 1) / k

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

#include <bits/stdc++.h>
using namespace std;

int solve(int n, int k) {
    return (2 * n + k - 1) / k + (5 * n + k - 1) / k + (8 * n + k - 1) / k;
}

int main() {
    int n = 3;
    int k = 5;
    cout << solve(n, k) << endl;
}

อินพุต

3,5

เอาต์พุต

10