### Problem

A company plan to recruit people. But, ends up finding many more than eligible people.So, they plan a strategy to cut short the people to their suit the headcount of their requirement.People will be lined up in a queue 1, 2, 3… N. At first phase, people at odd locations will be eliminated. Same thing will apply for next phase.

For example,

Round 1: 1, 2, 3, 4, 5, 6….N

Round 2: 2, 4, 6.. N (People at odd locations eliminated)

Round 3: 4, 6… N (People at odd locations eliminated)

Given the value of N, where will you position yourself to take up the job ??

### Solution

I would choose position is the last power of 2 within N for example, if N=17, the last power of 2 is 16 (2^4)

To be more specific,We have to chose the position of 2 raised to the power of x, where x is the no. of eliminations required to reduce n number of people to a final one.

x can be calculated by using a simple while loop.

x=0; while(N>1) { N=N/2; x=x+1; }

**Reference**

## 0 comments:

## Post a Comment