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

โค้ด C++ นับจำนวนธนบัตรสูงสุดที่ธนาคารรวบรวมได้

โจทย์: มีผู้ดูแลธนาคารอยู่ตู้ที่ k มีไฟล์ n ตู้ ตู้ที่ l (lk) มียามเฝ้า ไม่สามารถเข้าได้ ผู้ดูแลเดินหรือหยิบเงินได้ทีละตู้ หาจำนวนธนบัตรสูงสุดที่หยิบได้

Input: k=5, l=3, m=7, A=[4,7,5,5,3,6,2,8] → Output: 4

ขั้นตอนแก้

c1 := 0
for each x in A:
    if x > l and x < m: c1++
return c1

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

#include <bits/stdc++.h>
using namespace std;
int solve(int k, int l, int m, vector<int> A) {
    int c1 = 0, n = A.size();
    for (int i = 0; i < n; i++) {
        int x = A[i];
        if (x > l && x < m) c1++;
    }
    return c1;
}
int main() {
    int k=5, l=3, m=7;
    vector<int> A = {4,7,5,5,3,6,2,8};
    cout << solve(k,l,m,A) << endl;
}

Input

5, 3, 7, {4,7,5,5,3,6,2,8}

Output

4