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

โปรแกรม C++ นับเหรียญขั้นต่ำเพื่อให้ผลรวมเท่ากับ k

สมมติว่าเรามีตัวเลขสองตัว n และ k เรามีเหรียญมากมายมูลค่า 1 ถึง n เราต้องการเลือกเหรียญบางส่วนให้ผลรวมเท่ากับ k สามารถเลือกเหรียญมูลค่าเดียวกันหลายเหรียญเพื่อให้ผลรวมรวมเป็น k เราต้องนับจำนวนเหรียญขั้นต่ำที่ต้องใช้เพื่อให้ผลรวมเป็น k

เช่น ถ้าค่าที่ป้อนเข้าเป็น n = 6; k = 16 ผลลัพธ์จะได้ 3 เพราะ (2 * 6) + 4

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

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

c := (n + k - 1) / n คืนค่า c

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

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

#include<bits/stdc++.h> using namespace std; int solve(int n, int k){    int c=(n+k-1)/n;    return c; } int main(){    int n = 6;    int k = 16;    cout << solve(n, k) << endl; }

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

6, 16

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

3