Hello,
I am very familiar with algorithms, BFS, DFS, salesman algorithm, Greedy, etc... I can provide you the exact solution, with all the proof about time complexity O(n). I can help you to understand the solutions on skype if you prefer to also.
Feel free to contact me for further discussion.