Monkeys on a Tree Coding Question
TCS Coding Question Day 2 Slot 2 : Question 1
This question has been asked in the TCS NQT 2020 Day 2 Slot 1
Topic : Conditional Statement
Time Given : 15 Minutes
Difficulty : 2/5 stars
There are total n number of Monkeys sitting on the branches of a huge Tree. As travelers offer Bananas and Peanuts, the Monkeys jump down the Tree. If every Monkey can eat k Bananas and j Peanuts. If total m number of Bananas and p number of Peanuts are offered by travelers, calculate how many Monkeys remain on the Tree after some of them jumped down to eat.
At a time one Monkeys gets down and finishes eating and go to the other side of the road. The Monkey who climbed down does not climb up again after eating until the other Monkeys finish eating.
Monkey can either eat k Bananas or j Peanuts. If for last Monkey there are less than k Bananas left on the ground or less than j Peanuts left on the ground, only that Monkey can eat Bananas(<k) along with the Peanuts(<j).
Write code to take inputs as n, m, p, k, j and return the number of Monkeys left on the Tree.
Where, n= Total no of Monkeys
k= Number of eatable Bananas by Single Monkey (Monkey that jumped down last may get less than k Bananas)
j = Number of eatable Peanuts by single Monkey(Monkey that jumped down last may get less than j Peanuts)
m = Total number of Bananas
p = Total number of Peanuts
Remember that the Monkeys always eat Bananas and Peanuts, so there is no possibility of k and j having a value zero
Example 1:
Input Values
20
2
3
12
12
Output Values
Number of Monkeys left on the tree:10
Note: Kindly follow the order of inputs as n,k,j,m,p as given in the above example. And output must include the same format as in above example(Number of Monkeys left on the Tree:<Integer>)
For any wrong input display INVALID INPUT
#include <stdio.h>
int main()
{
int n,k,j,m,p;
float atebanana=0.0,atepeanut=0.0;
scanf("%d %d %d %d %d",&n,&k,&j,&m,&p);
if(n<0 || k<0 || j<0 || m<0 || p<0)
{
printf("INVALID INPUT");
}
else
{
if(k>0)
atebanana =(float)m/k;
if(j>0)
atepeanut =(float) p/j;
n=n-atebanana-atepeanut;
printf("Number of Monkeys left on the Tree:%d",n);
}
return 0;
}
import java.util.*;
class Monkeys
{
public static void main(String []args)
{
Scanner sc = new Scanner (System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int j = sc.nextInt();
int m = sc.nextInt();
int p = sc.nextInt();
int atebanana=0 ,atepeanut=0;
if( n<0 && k<0 || j<0 || m<0 || p<0)
{
System.out.println("Invalid Input");
}
else
{
if(k>0)
atebanana =m/k;
if(j>0)
atepeanut = p/j;
n=n-atebanana-atepeanut;
System.out.println("Number of Monkeys left on the Tree: "+n);
}
}
}
Day 2 Slot 2 Question 2
Click on the below button to study Day 2 Slot 2 Question 1 of TCS NQT Coding 2020 exam
TCS Coding Questions
Click on the below button to study more TCS Coding Question
def monkey(tot_mon,edi_ban,edi_pea,tot_ban,tot_pea):
if edi_ban<=0 or edi_pea<=0 or tot_ban<=0 or tot_pea<=0:
return ('INVALID INPUT')
monkey_left=int(tot_mon-((tot_ban/edi_ban)+(tot_pea/edi_pea)))
return (f'Number of Monkeys left on the tree:{monkey_left}')
n=int(input())
k=int(input())
j=int(input())
m=int(input())
p=int(input())
print(monkey(n,k,j,m,p))
def monkey(n,k,j,m,p):
atebanana = float(0.0)
atepenuts = float(0.0)
if (n<0 or k<0 or j<0 or m<0 or p0):
atebanana = float(m/k)
if (j>0):
atepenuts = float(p/j)
n = n – atebanana – atepenuts
return n
n = int(input())
k = int(input())
j = int(input())
m = int(input())
p = int(input())
print(“Number of Monkeys left on the tree:”,monkey(n,k,j,m,p))
This is the python code for given problem. hope it’ll be helpful
Pls give me code on python