RIT CS Puzzle Hunt April 4, 2009 1 Comment
Today was RIT’s CS Puzzle hunt, which is similar to MIT’s Puzzle Hunt if you are fimilar with that except that we only have around 12 problems. If you are unfimilar with either puzzle hunt, it’s pretty much a series of puzzles which one must not only figure out the solution but also figure out what is needed to be done in order to solve the problem. For example, you might be given a list of numbers along with some “flavor text”, used to give hints as to what needs to be done, and you get to figure out what to do!
At times, this can be very frustrating because you’ll have no idea what to do or where to start. These types of puzzles require a lot of abstract thinking and a great deal of random knowledge. Unfortuatly, I don’t have much of the random knowledge but I’m ok at the abstract thinking part. I’m getting better at it as I do more and more of these types of puzzles. If you’ve never done these before, you’ll probably be like “what the fuck is this shit” most of the time because everything seems so random.
I only solved one problem out of the twelve but made a good deal of progress one some of the others. The one I solved was a “Bongard Problem.” I’ve never heard of it before but the idea is pretty simple. You are given a group of items which are similar in some way and a second group which are different. You are then given a third set of items and you need to determine which item in that set corrsponds to the set with the similarities. Here’s a cool link http://en.wikipedia.org/wiki/Bongard_problem.
I was able to figure out 4 of the 8 solutions and it seems as though I would have to brute force the rest of the solutions. For each set, there were 3 possible answers and above each answer was a letter of the alphabet. I figured that the answer corrsponding with the letter and probably spelled out a word. I wrote a simple java program to print out all 81 possibilities for me and looked through to find a word that made sense. The funny part was that it was the very first combination tried, which means I’m pretty terrible at brute forcing things by hand :-/. Either way, I tried the answer on the problem and it said I was correct so we submitted that as the answer and it was correct! Woot!
I was also able to brute force another solution to a problem. It was the first one, which had to do with the names of Computer Science teachers. After reading the clue and looking at the layout of the puzzle, it was fairly obvious that it was a cryptic crossword puzzle, which suck. Not only do you have to complete a crossword puzzle, you also have to solve the clues for the puzzle. I was able to figure out 3 of the names that fit in and brute forced the letters for the other names that could fit into the spot. The answer didn’t show up at the very beginning like the last one did, but I did find it in my print out. Pretty neat think.
If you’re interested, you can find the puzzle here: http://www.cs.rit.edu/~zjb/hunt/. Also, http://www.collegepuzzlechallenge.com is a pretty good place to have fun with puzzles.
Pascal's Triangle and Powers of 11 March 29, 2009 No Comments
In all of math, probability and statistics is the topic I hate. There’s just something about it that bugs me. Maybe it’s because I’ve never had a “good” teacher, but it’s most likely that it just doesn’t click with me. This quarter at RIT, I am lucky enough to take it and maybe I will learn exactly what I hate about it.
Since the classes last for 2 hours, most classes have a 5 to 10 minute break in the middle of them. During this break, I discovered something that I never knew about Pascal’s Triangle which I found really interesting. For those of you who don’t know Pascal’s triange here is the algorithim for making it.
- The first row begins with 1
- The second row has two 1’s, so: 1 1
- Each additional row begins and ends with 1, and each number is the the sum of the two numbers that are above and in between it
Here’s a picture from mathforum.org!

Source: http://mathforum.org/
If you look at the first few rows, you might say to yourself, “Wow, those look like powers of 11!” I did at least. 1 = 11^0, 11 = 11^1, 121 = 11^2, 1331 = 11^3, and 14641 = 11^4. But what about 15101051? 11^5 = 161051, not 15101051. But what if we take each number in that row of Pascal’s Triangle as the number of 10’s, 100’s, 1000’s, and so on.
So, there should be one 1, five 10’s, ten 100’s, ten 1000’s, five 10000’s, and one 100000. If you do some conversion to base 10, you will have one 1, five 10’s, zero 100’s, one 1000’s, 6 10000’s, and one 100000. Writing this as a number, 161051 or 11^5.
The next row of Pascal’s Triangle, 1615201561 would be just 1771561 which is 11^6. The next row, 172135352171 would be 19487171 which is 11^7 and so on. More generalized, if you convert the nth row of Pascal’s Triangle to base 10, you can get the n-1th power of 11.
Ain’t that neat?
The Möbius Strip February 9, 2009 No Comments
In the words of my geometry teacher, Michael Keyton, Möbius Strips are “interesting creatures.” What makes them interesting are the number of sides and “tops” and “bottoms” that they have, which is only one. Yes, one! They have only one side and only one top (or bottom depending on your view). In our three dimensional world this makes no sence because we never see such a surface. If you were to draw a line down one “side” of it and kept going, you would end up back where you started and upon inspection, you would find that your line is next to both “sides” of the Möbius Strip. Hard to believe? Yes.
What happens if you cut one in half lengthwise? We were discussing this in my vector calculus class yesterday and I was convinced that you would get two strips of paper. How could you not? You’re cutting it in half! Other people claimed that you would still only get one piece, except it would be twice as big. Wait, what?!?! The teacher said that they were correct, that cutting a Möbius Strip down the middle would produce one strip that is twice as big as the first. I did not belive this and had to try it myself by making my own paper Möbius Strip and cutting it down the center. Before I did so, I drew a line down one “side” of it so that I can have a reference to whatever happens after I do cut it. My mind exploded. There was only one strip of paper.
I had to do this again, except paying close attention to what happens. In class, people argued that because the Möbius Strip has only one side, which is infact twice the length of the paper, cutting it down the middle wil produce the second side and will also be twice the length of the paper and thus only one strip will be produced. After cutting the Möbius Strip strip down the cetner again, that is exactly what happens. The new strip also has what appears to be two twists in it.
But wait, there’s more! What happens if I cut it a different way? Maybe instead of down the middle, what if I cut the Möbius Strip near an edge? You get the inner third of the original Möbius Strip which is also a Möbius Strip and a large strip with two twists in it, like with what happens when you cut the original Möbius Strip down the center.
I did this a few more times and went over to the library to get a few books on topology. I will probably won’t get close to getting through them though, but I do plan on checking some more out before break so I can work through them over break. I decided that it would be pretty neat to do a presentation on Möbius Strips for BarCamp (http://www.barcamproc.org) so I will be doing that.
In conclusion, everyone needs t go make Möbius Strips right now. And make a lot of them. It will be awesome, trust me.
Getting Rid of Ubuntu January 5, 2009 No Comments
I do believe that Thursday night, I will be uninstalling Ubuntu from from my
laptop and just use OS X again. The problem with Ubuntu on a Macbook Pro is
that the features that I use in OS X all the time, I cannot use in Ubuntu
because of driver issues or some other random reason. For example, I am unable
to turn down the screen brightness without doing a bunch of stuff in the
terminal. I am also unable to change the speed of my fans without the
terminal; not that I mind using the terminal, it’s just that having to do the
same series of commands over and over again when all my attempts to
automatically do it fail annoys me.
The programs that I would normally use for coding are also nonexistent in
linux. Editors like TextMate and Coda are very nice to use when working with
larger projects because you can quickly switch between files when if you
forget something. Vim is nice to use when working with smaller projects that
don’t require many files to function. I still have access to Vim in OS X too,
so linux really isn’t stopping me. The Arduino software was also giving me
problems in Ubuntu while it does not in OS X.
I will miss the alt+t keyboard command to access the terminal though, which
I’m still trying to figure out in OS X. People have suggested that I just use
Quicksilver and get used to it, but I don’t find it Quicksilver to be helpful.
Amarok was also nice to use and had a lot of features that I wish I iTunes had
and makes me wish the OS X version would come out sooner. Also, running a web
server off my laptop was pretty cool, but I can always use XAMPP on OS X and
just use the web server I have in my room for testing as well if XAMPP doesn’t
work.
Conservative Vector Fields January 4, 2009 No Comments
These are pretty interesting things in vector calculus. A vector field F is considered conservative if there is a function f such that F=∇f. But why is this cool, you ask. Because conservative vector fields are path independent! And now you may wonder why this is also cool, and that is because we don’t need to calculate anything except for the initial point and the ending point in order to find a value of the path integral! Woot!
Such a property makes conservative vector fields extremely nice to deal with in physics calculations, usually dealing with electricity and magnetism. Instead of having to actually figure out what the integral along the path is, you only need to know the anti derivative of the function and plug in the initial and ending points. Finding the work done by moving a particle or an object from a point A to another point B is also pretty easy to find using conservative vector fields.