Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //press FFFFFFFFF
- #include <bits/stdc++.h>
- using namespace std;
- int INF = INT_MAX;
- #define endl '\n'
- bool check(int a, int b, int k, int n, int m){
- int c = (k - (m * a)) / b;
- //cout << c << " " << n << endl;
- if(c + m < n){
- return false;
- }
- else{
- return true;
- }
- }
- int main() {
- int q;
- cin >> q;
- for(int j = 0; j < q; j++){
- int k, n, a, b;
- cin >> k >> n >> a >> b;
- if(k / b <= n){
- cout << -1 << endl;
- continue;
- }
- if(k / a > n){
- cout << n << endl;
- continue;
- }
- int l = 0, r = n;
- while(l < r - 1){
- int mid = (l + r) / 2;
- //cout << l << " " << r << " " << mid << " ";
- if(check(a, b, k, n, mid)){
- l = mid;
- }
- else{
- r = mid;
- }
- }
- cout << l << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement