Skip to main content

Cars and Bikes Problem Code: TYRES | CodeChef

Problem:

Chef opened a company which manufactures cars and bikes. Each car requires 

4 tyres while each bike requires 2 tyres. Chef has a total of N tyres (N is even). He wants to manufacture maximum number of cars from these tyres and then manufacture bikes from the remaining tyres.

Chef's friend went to Chef to purchase a bike. If Chef's company has manufactured even a single bike then Chef's friend will be able to purchase it.

Determine whether he will be able to purchase the bike or not.

Input Format

  • The first line contains an integer T denoting the number of test cases. The T test cases then follow.
  • The first line of each test case contains an integer N denoting the number of tyres.

Output Format

For each test case, output YES or NO depending on whether Chef's friend will be able to purchase the bike or not. Output is case insensitive.

Constraints

  • 1≤T≤100
  • 2≤N≤1000
  • N is even

Sample Input 1 

3
8
2
6

Sample Output 1 

NO
YES
YES

Explanation

  • For the first test case Chef, will manufacture 2 cars and will thus use all the 8 tyres and thus could not manufacture any bike.

  • For the second test case, Chef cannot manufacture any car since there are not enough tyres and will thus manufacture only a single bike which will be purchased by Chef's friend.

  • For the third test case, Chef will manufacture 1 car and thus use 4 tyres. From the remaining 2 tyres, Chef can manufacture a single bike which will be purchased by Chef's friend.

Solution:

#include <iostream>
using namespace std;

int main() {
// your code goes here
int t; cin>>t;
while(t--){
    int n;cin>>n;
    while(n>4){
        n%=4;
    }
    if(n>=2 && n%2==0)
        cout<<"YES"<<endl;
   else cout<<"NO"<<endl;
}
return 0;
}

Comments

Must Read:

Pyramid

/*  To Print  1    2   2    3   3   3    4   4   4   4    5   5   5   5   5    */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      int   n ;  cin >> n ;      for ( int   i = 1 ; i <= n ; i ++){          for ( int   j = 1 ; j <=  i ; j ++){     ...

Pattern

/* To print:                 *                *   *            *   *   *        *   *   *   *    *   *   *   *   *    */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      in...

0-1 Pattern

  /* @ToDo  0-1 Pattern     1     0   1     0   1   0     1   0   1   0     1   0   1   0   1 */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     // Code here!!      int   n ;  cin >> n ;      int   sign  =  1 ;      for ( int   i = 1 ; i <= n ; i ++){    ...

Goldmine

1. You are given a number n, representing the number of rows. 2. You are given a number m, representing the number of columns. 3. You are given n*m numbers, representing elements of 2d array a, which represents a gold mine. 4. You are standing in front of left wall and are supposed to dig to the right wall. You can start from       any row in the left wall. 5. You are allowed to move 1 cell right-up (d1), 1 cell right (d2) or 1 cell right-down(d3). 6. Each cell has a value that is the amount of gold available in the cell. 7. You are required to identify the maximum amount of gold that can be dug out from the mine. Input Format A number n A number m e11 e12.. e21 e22.. .. n * m number of elements Output Format An integer representing Maximum gold available. Constraints 1 <= n <= 10^2 1 <= m <= 10^2 0 <= e1, e2, .. n * m elements <= 1000 Sample Input 6 6 0 1 4 2 8 2 4 3 6 5 0 4 1 2 4 1 4 6 2 0 7 3 2 2 3 1 5 9 2 4 2 7 0 8 5 1 Sample Output 33 Solution:...

Coin Change Combination

1. You are given a number n, representing the count of coins. 2. You are given n numbers, representing the denominations of n coins. 3. You are given a number "amt". 4. You are required to calculate and print the number of combinations of the n coins using which the       amount "amt" can be paid. Note 1: You have an infinite supply of each coin denomination i.e. same coin denomination can be                    used for many installments in payment of "amt" Note 2: You are required to find the count of combinations and not permutations i.e.                   2 + 2 + 3 = 7 and 2 + 3 + 2 = 7 and 3 + 2 + 2 = 7 are different permutations of same                    combination. You should treat them as 1 and not 3. Input Format A number n n1 n2 .. n number of elements A number amt Output Format A number representing the count of ...

Pattern

  /* To print Pattern:                     *                 *   *             *   *   *         *   *   *   *     *   *   *   *   * */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen ( "../asset/output.txt" , "w" , stdout );     #endif     //...

RDBMS Data Definition Language | Create Sales_info table

  Write a query to create Sales_info with constraints mentioned. Refer the below schema  Result Description Summary of tests +------------------------------+ | 3 tests run / 3 test passed | +------------------------------+

Zig Zag Pattern

  /* @ToDo     Zig Zag Pattern         *               *                *       *       *       *        *               *               *        */ #include   <iostream> using   namespace   std ; int   main (){       #ifndef  ONLINE_JUDGE          freopen ( "../asset/input.txt" , "r" , stdin );          freopen (...

Target Sum Subsets - Dp

1. You are given a number n, representing the count of elements. 2. You are given n numbers. 3. You are given a number "tar". 4. You are required to calculate and print true or false, if there is a subset the elements of which add       up to "tar" or not. Input Format A number n n1 n2 .. n number of elements A number tar Output Format true or false as required Constraints 1 <= n <= 30 0 <= n1, n2, .. n elements <= 20 0 <= tar <= 50 Sample Input 5 4 2 7 1 3 10 Sample Output true Solution: import java.io.*; import java.util.*; public class Main {     public static void main(String[] args) throws Exception {         Scanner sc = new Scanner(System.in);         int n = sc.nextInt();         int[] arr = new int[n];         for(int i=0;i<n;i++)             arr[i] = sc.nextInt();         int tar = sc.nextInt(); ...

Subscribe to Get's Answer by Email