Introduction
It is my favorite weekly contest. I played the contest and I like to share my performance.
My performance
Here is my performance.
Source code from top 10 players
I just could not believe that I can read top 10 players source code. I never know that I can do it until today I read the instructions.
I could not believe that I am so careless. I will figure out best solutions through those top 100 players.
Score two algorithms:
1003. Check if word is valid after substitutions. Here is the link.
1002. Find common characters. Here is the link.
Fail to pass all test cases:
Here is the folder to contain the code.
Time to change
It is time for me to work on one hard level algorithm a week. I can just choose to work on the hard level algorithm in weekly contest.
I really like those algorithms in the weekly contest. The hard level algorithm in the contest and also the third algorithm I usually do not have time to complete, because I do not come out short and elegant solution. I involve too much detail in the implementation.
How to motivate myself? Think about those huge reward in the salary to work for top 4 software companies. Usually dynamic programming solution is hard level, and it is used to differentiate that you are senior level or just junior level. Why I stop practice dynamic programming? Should I practice one at least a week for fun, and continue to learn things from the problem solving?
Another idea is for me to work on, I need to choose one classical algorithm to ask in the interview. I should ask one dynamic programming algorithm. Usually it is the first algorithm in Google phone screen. I should hold high standard to quickly filter out the interviewee.
Since I schedule four interviews a week as an interviewer on interviewing.io, I can plan to work on dynamic programming algorithm more often this year.
I also should use the opportunity to learn and improve my dynamic programming solving skills.
No comments:
Post a Comment