I phoned to the owner of the company and I said: I’m free.

He replied Come tomorrow.

Anything else I had added would have prevented the

possibility of recruitment.

When you are looking for a job the only think that is important is to understand

what they are looking for, and to adapt yourself to the duty.

The company owner was looking for someone who can solve immediately a problem he has,

and ready to start tomorrow.

He is not interested at all on how smart you are. ]]>

So, they say, “We are searching for the smartest people in the world.” Now they have set a level of smartness they require by the questions they ask in the interview. Now if an applicant is unable to answer at least 50% (or whatever limit they have set, remember they say, “just a few”) of those, you are under-qualified for the job. And if you solve a lot more than that limit, you are rather over-qualified for the job.

Now think of this like this, the interviewers made the toughest problems they could when they wanted to hire someone. Now if you are able to solve all of them very easily, this means you are too fit for the job. They would have to create more problems for you more often than other employees. Then there will be a limit, when they won’t be able to create any more problems that are challenging to you. This would result in you resigning the job. They know of this beforehand and just doesn’t hire you, to save YOUR precious time.

PS: This is a true story of a professor of mine, who is a recruiter himself.

]]>1. Note the solution can be a unique point (e.g. if exactly one gas station, car’s tank empty at start).

2. Also note, if we instead ask: does there exist a startpoint from which the car can

perform a full circle IN EITHER DIRECTION, then the answer can be “no” —

for example empty car tank, two stations located near to each other each with

half the gas.

3. What is the computational complexity of finding a startpoint for the gas/circle problem, given the locations and gas-content of each station as input?

If the gas stations are input in angular order, then it is possible to solve this

in O(N) steps and O(N) words of memory. To sketch the method: use a doubly-linked

list to store the gas stations in angular order. Scan thru the list once as described by

Michael Watts, to find two stations to combine. (Accomplish combination by deleting

the further-forward station from the list and summing it and its predecessor’s gas-contents.) Each time you combine two, check to see if the new super-station can

“reach” its successor, if so combine them; otherwise continue scanning.

The problem will be solved (all combined into one) in linear total time.

But this is a “forward only” algorithm which never needed to “backtrack.” Consequently, it actually is possible to implement this with only a singly-linked list;

and even better with only O(1) words of memory-storage provided we have

circular-tape style access to the read-only scan-forward-only input.

4. Now here is a NEW PROBLEM for you:

Idiots have dropped N fuel-depots onto the surface of the moon. Their locations

and fuel-contents were arbitrary. Now you, a smart astronaut, choose where you

want to land on the moon with your moon-buggy. Your goal is to

tour around the moon in the buggy.

Prove:

If the total fuel in the N depots is at least C*N^(3/2),

where C is a sufficiently large constant,

then there exists at least one point on the moon, such that, starting from there,

the moon-buggy will be able to reach every depot.

Try to find the least value of C that you can, such that this remains true.

On the other hand if C is too small then it becomes possible that no such startpoint

exists. Try to find the greatest value of C, such that this nonexistence can happen.

Er, unless I’m mistaking again. This reminds me of my last math teacher. He was disparately looking for audience participation in course (in a country where students are mute). He would say “come on, propose some idea. Math course is the place in life to welcome wrong statements. Don’t miss the chance”. Guess who took it…

]]>I’m no imo player, and sadly far below that level. I’m not even in computing-like job. The real wonder is that this employer, and his colleagues, were not able to solve this problem. Well, surely they should choose another job (or should i ? 🙂 ).

But things are not so bad. You don’t hire your boss ; it’s the other way round. Neither do you hire someone who will show you wrong all the time. And neither do you go for a boss with evidence of weak ability. Finally, bad reasons have led to the right decision…aa& which is what an interview is designed for !

]]>I will assume, that car’s tank is empty in the beginning, but there is a gas station in the starting point s_0 with the amount equal to what is in car’s tank.

I assume the circle is of length 1. I assume, that car needs the arc’s length amount of gas to move from arc’s start to end.

now let look at the gas station s_i, if the car with the empty tank is able to reach station s_i+1, when we could safely “transit” gas from s_i+1 to s_i, making it hold

the cumulative amount of gas, if the stations are different. After this process ends: there is not even one station with enough gas to reach next one, or there is exactly one station left, in which case we are done. So in the former case we just summarize gas amount in all stations and it is less, when 1. contradiction.

Imagine there are two cars, one goes clockwise and the other goes counter clockwise… There must be one point in the circle where they can go in opposite directions and meet back at the starting point. ]]>