Giả sử chúng ta có ba số k, l và m, và có một mảng A khác với n phần tử. Một tên cướp không cướp được ngân hàng nhưng đã mở được tất cả các két sắt của một ngân hàng. Khách hàng trống không quyết định lợi dụng vụ cướp bất thành này và lấy trộm một số tiền trong két sắt. Trong một hàng có nhiều két sắt. Tổng cộng có n tờ tiền trong tất cả các két. Tờ tiền thứ i nằm trong két A [i]. Nhân viên ngân hàng bây giờ có an toàn k. Có hai nhân viên bảo vệ, một nhân viên bảo vệ két sắt sao cho l
Vì vậy, nếu đầu vào giống như k =5; l =3; m =7; A =[4, 7, 5, 5, 3, 6, 2, 8], thì đầu ra sẽ là 4, bởi vì
Các bước
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
c1 := 0 n := size of A c1 := 0 for initialize i := 0, when i < n, update (increase i by 1), do: x := A[i] if x > l and x < m, then: (increase c1 by 1) return c1
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
#include <bits/stdc++.h> using namespace std; int solve(int k, int l, int m, vector<int> A){ int c1 = 0, x; int n = A.size(); c1 = 0; for (int i = 0; i < n; i++){ x = A[i]; if (x > l && x < m) c1++; } return c1; } int main(){ int k = 5; int l = 3; int m = 7; vector<int> A = { 4, 7, 5, 5, 3, 6, 2, 8 }; cout << solve(k, l, m, A) << endl; }
Đầu vào
5, 3, 7, { 4, 7, 5, 5, 3, 6, 2, 8 }
Đầu ra
4