Phone screening 1 :
Given a chess board an a knight and a starting position return true if Knight can visit all cell
Followup 1 : How will you change the algorithm if a knight can only visit a cell once.
Followup 2 : What if some cells are marked blocked. Return true if all remaining cells can be visited.
Followup 3 : Return the minimum path to visit all all cell just once.
Onsite
1 Coding : https://leetcode.com/problems/remove-invalid-parentheses/
2 Coding : very similar to https://leetcode.com/problems/logger-rate-limiter/
- Asked to design a class that will not print the log (an integer) if found in last x sec
- Interviewer was looking for a good data structure that can print and store it in buffer
- I did TreeMap but could have just used StringBuffer . I asked should we discard the most recent visited or already added in stream in x sec window - its up to me to decide.
3 : System Design - Ads click optimization . Design a system that can be trained and evaluated to optimize on revenue as objective function. Drilled down on how will you evaluate the model on frequent basis.
4 System Design : Google Event booking system
System will work as part of Google Search
5 Googlenes / Behavior Round