Here we will solve Hacker earth coding question asked in Renault off campus recruitment. question tittled as **“count buildings**” was asked as a part of coding challenge round

**Question:**

There is a cricket stadium and to the right of the stadium, there are N number of buildings in a **straight line. Bob wants to see the cricket match from the top floor of the building,** but there are some conditions to see the match from ith building. The conditions are as follows

- Bob can only see the match from the top floor of ith building if there exists at most K[i] buildings in front of bob with height less than and equal to the height of ith building.
- If any building is found in front of bob with height more than the height of ith building then bob cannot see the match from ith building.

**You are given following information:**

- An array A of N integers denoting the heights of each building
- An array K of N integers

**Task **

Determine the total number of buildings from which Bob can see the cricket match.

**Example1:**

**Input:**

- N=3
- A=[2,1,3]
- K=[1,2,1]

**Output:**

1

**Approach**

- For building with height 2 that is A[0]
- The number of buildings in front of it that have a height smaller than or equal to 2 is 0 which is less than K[0]=1.
- Here,
**Bob can see**the cricket match from this building

- For Building with height 1 that is A[1]
- The number of buildings in front of it that has a height smaller than or equal to 1 is also 0 (zero) which is less than K[1]=2,But since there exists a building with height 2 in front of it.
**Bob can not see**cricket match from this building.

- For building with height 3 that is A[2]
- The number of buildings in front of it that have a height smaller than or equal to 3 is 2 which is greater than K[2]=1.
**Bob can not see**cricket match from this building.

**Therefore the final answer is 1**

**Example2:**

**Input:**

N=5

A=[5,6,8,4,10]

K=[1,2,1,2,2]

**Output:**

2

**Algorithm to Solve **

- Initially take input from user which represents number of buildings
- Then take array of integers representing height of each element.
- Next take K array elements.
- Here we need to satisfy 2 conditions
- The builds infront of current building should have
**height less than or equal to height**of current building. - The next condition says that “number of buildings with height less than or equal to height of current building should be ” less than or equal to
**K[Current building position]**.

- The builds infront of current building should have
**So**take each element of the building height array and compare with the elements before it, if any building is found with height > current building height, then break loop as Bob canoot see cricket match from there.- If above condition is not satisfied the find total buildings count which satisfies 4th point and compare with corresponding
**K[i] element**if it satisfies condition then Bob can see the match. - Repeat the step untill all builds inside array are compared.
- Return an integer denoting
**total ways**in which bob can see the cricket match.

**JAVA CODE **

package arrayproblems; import java.util.*; class probem9 { public static void main(String[] args) { int N=5; int [] array1= {5,6,8,4,10}; int [] array2= {1,2,1,2,2}; int res=0; for(int i=0;i<array1.length;i++) { int count=0; boolean flag=false; for(int j=0;j<i;j++) { if(array1[j]<array1[i]) { count++; } else { flag=true; } } if(count<array2[i] && flag==false) { res=res+1; } } System.out.println("no of ways in which bob can see match : " + res); } }

**Watch complete explanation for Code **

**Similar off campus coding questions **

Wipro Elite Coding Question Solved

Crack TCS Coding Round By solving These Questions

Pingback: SHL off campus coding questions - Is It Actually

Pingback: APPSIAN off Campus Coding Question - Is It Actually

Pingback: Maximum Work Hacker Earth Problem solved - Is It Actually

Pingback: SHL off campus coding question solved - Is It Actually