MOVIETIME - Editorial

Problem Link:
https://www.codechef.com/CDGK2022/problems/MOVIETIME

Author: vamshi365,
Testers: harisankar14, indu712,lokesh_la9,gayathrii,kirtana01
Editorialist: bvsyaswanth1, kick_jayanth

DIFFICULTY: EASY

PREREQUISITES: Basic Math

PROBLEM:
Chef has N friends, he wants to go to a movie and he has X rupees of money with him. In a theater where Y seats are vacant, where every seat costs A rupees.

Can Chef take his friends to the movie with him? If yes print the output as YES or else print NO.

EXPLANATION:
Chef has N number of friends. There are Y number of seats. The first condition that needs to be satisfied is that Y should be greater than or equal to N+1(number of people including chef).
Now, we should check whether chef has enough money or not. Each ticket costs A rupees. So, N+1 tickets costs A*(N+1). So, the value of X should be greater than A*(N+1). When these two conditions get satisfied, we should print YES.

TIME COMPLEXITY: O(1) per test case

CODE:

Editorialist’s code (Python):

for _ in range(int(input())):
    n,x,y,a = map(int,input().split())
    print('yes' if (n+1)<=y and a*(n+1)<=x else ‘no')

Tester’s code (C++):

#include<bits/stdc++.h>
using namespace std;
int main(){
    int t;
    cin>>t;
    while(t--){
        int n,x,y,a;
        cin>>n>>x>>y>>a;
        bool c = false;
        if(y>=n+1){
            int val;
            val = (n+1)*a;
            if(val <= x){
                c = true;
            }
        }
        if(c == true){
            cout<<"YES"<<endl;
        }
        else{
            cout<<"NO"<<endl;
        }
    }
}