int box = 5;

Tuesday, October 31, 2006

Everything

USC loses! This makes me happy because they are done for the season as far as a championship is concerned. However, the BCS can still explode. Suppose West Viriginia runs the table, but say after the Michigan/Ohio State game those two teams are still #1 and #2? Kaboom! I don't think it's fair, but I am sure rooting for it so that the NCAA and the major conferences get a clue, and I'm sure they would want to change it when they see all that money will go to the Big Ten!

The Carolina Panthers... they gave the game away, but anyone who watched the game knows it was closer than that final score. I stopped watching after Delhomme throws a pick down 21-14, then heard the final score and ESPN calling it a savage beatdown. Regardless, the Panthers need to figure it out soon: Atlanta looks GREAT and New Orleans is pretty darn good.

I went to Competition Programming on Sunday morning with a major headache, to see that the two other alternates that make up our practice team did not show up. What do I proceed to do? Solve three problems by myself, where the two main teams of three solve 4 and 5. I felt pretty good, but I wonder how much terminal time I used. You only get 5 man-hours total coding, so that's 37.5 minutes per problem coding if you do all eight problems. I definitely spent more than that, but considering the most solved was 5, an hour a problem sounds more like what I did. Even though I won't get to actually compete unless someone oversleeps, the practices are fun and valuable.

My 212 program is now due on Sunday night, so I won't be working on that until Friday. I have an interview with Apple on Friday about a summer internship. It's my first real interview, so I have a very vague idea of what to expect. Hopefully I won't be throwing myself into the lion's den if it's as rigorous as a Microsoft interview with hits like:
You have two pieces of string that burn non-uniformly for 1 hour each. How would you burn them and measure 45 minutes? (Light both ends of one of the strings and one end of the other. When the string with both ends lit burns out (30 min.), light the second end of the remaining string. Fifteen minutes later, that string will burn out.
Or...
Explain an algorithm to detect a cycle in a linked list in O(1) space. (Floyd's trick: put two pointers on a linked list and have them traverse the list at different speeds. If there is a cycle in the linked list, they must eventually meet somewhere in the loop.)
Albeit, I have heard/been taught these. I'm not sure how I would do in a real setting with new problems, although from what I hear, if you know things like tries and dynamic programming, they will love you.
"I mentioned dynamic programming in a job interview and he thought it was some software engineering buzzword like 'extreme programming'." - a grad student