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

โค้ด C++ หาจำนวนแพ็คเติมน้ำดื่มที่ต้องซื้อ

สมมติว่ามี 'a' จำนวนแมตช์ และ 'b' จำนวนการประชุมข่าวในสนามในสัปดาห์หนึ่ง มีห้องอาหารสองแห่ง หนึ่งในห้องล็อคเกอร์ผู้เล่น อีกแห่งในพื้นที่ประชุมข่าว มีเครื่องจ่ายน้ำอัดลมสองเครื่อง ต้องเติมน้ำต้นสัปดาห์ ห้องล็อคเกอร์ใช้หนัก ต้องเติมทุก 'c' เกม ห้องประชุมข่าวเติมทุก 'd' เหตุการณ์ คณะบำรุงรุงสั่ง k แพ็คต้นสัปดาห์ x แพ็คห้องล็อคเกอร์ y แพ็คห้องประชุม x + y <= k ต้องหา x และ y ถ้าต้องมากกว่า k พิมพ์ "Limit Exceeded"

เช่น ถ้าอินพุตคือ a = 8, b = 8, c = 4, d = 6, k = 9 เอาต์พุตจะเป็น 2, 2

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

a := (c + a - 1) / c
b := (d + b - 1) / d
if a + b <= k:
    print(a, b)
otherwise:
    print("Limit Exceeded")

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

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

void solve(int a, int b, int c, int d, int k) {
    a = (c + a - 1) / c;
    b = (d + b - 1) / d;
    if (a + b <= k)
        cout << a << " " << b << "\n";
    else
        cout << "Limit Exceeded." << "\n";
}

int main() {
    int a = 8, b = 8, c = 4, d = 6, k = 9;
    solve(a, b, c, d, k);
    return 0;
}

อินพุต

8, 8, 4, 6, 9

เอาต์พุต

2 2