Home  |  About CS Games  |  Pictures  |  The Team

CS Games is a brand new competitive event hosted by McGill University in Montreal. It allows students from both US and Canadian schools to compete against each other in an agglomerate of logic, coding, and computer gaming trials. Our experience included three sessions of logic puzzles, one session of AI development, one session of debugging, one session of scripting, and one session of website design. In addition to these mind-intensive events, points were also scored based on our involvement in a city-wide and campus-wide scavenger hunt, a computer gaming tournament, and some friendly participation-points-only sporting events (basketball and volleyball).

Events:

  • Across the river and back (Logic #1)

    Two members from each team joined forces to solve a range of logic puzzles. Here are some of the problems we had to solve:

    Pirates' Booty
         Five pirates find a treasure of 500 gold pieces. The senior pirate gets to decide how to distribute the gold, and then all the pirates get to vote yes or no. If  at least half of the pirates vote 'yes', then the gold is distributed according to the senior pirate's plan, but if at least half the pirates vote 'no', then the senior pirate is killed, and the process starts over again for the next senior pirate. Assuming every pirate is logical, how should the senior pirate divide up the gold so he gets as much as possible?

    Poor Man's Decision

         A beggar can't decide on which side of the street to beg. He wants to toss a coin to get an equal chance that he end up on either side, but all he has is a thumbtack. How can he use a thumbtack to perfectly simulate the 50-50 nature of a coin toss? 

  • Surf me, baby (Web Design)

    A single representative from every team was provided with identical resources to construct a website for a hypothetical web-hosting company.

    Provided to the site designer were the following resources and tools:
      Notepad
      Photoshop 7
      Gimp 1.2.4
      Internet Explorer 6
      Mozilla 1.2.1
      Opera 7
      Information about the company
      Image gallery with logos and photos
      Guides on HTML, JavaScript, CSS, and Dhtml

    Evaluation was based on look and design, ease of use, ease of update, content, and cross-browser compatibility.

  • Clone Wars (A.I. / Competitive Programming)

    This three-person event presented those participating with a unique and challenging event. The goal was to create the AI for a game similar to the popular Go, except for 6 players and played on a hexagonal board with sides of length five.
    An almost-complete Java implementation of the client was provided to each team. Our responsibility was to figure out a good strategy, become familiar with the code, and then implement our strategy. The three hour time limit meant that we had no time to test our AI, but as seen here, it turned out to work alright. 

  • The Prisoner's Dilemma (Logic #2)

     Similar to Logic #1, except here the event was conducted more like a game show. Two team members were handed a slip of paper with a question on it, and then teams buzzed in to state their answer. The first team to correctly answer would score three points for a full solution, if they gave only a partial answer (like a guess with no justification) that was correct they would recieve only 1 point, and wrong answers were minus a point. Each question was answered, on average, within 30 seconds of being handed out. Some of the questions were (literally) taken from the game Mindtrap, and the rest were of similar fashion. This event ran concurrently with Debugging, and one member of the team rotated out of Logic #2 and into Debugging, and vice versa, every hour.

  • Segmentation Frustration (Debugging)

     Here, one member at a time was presented with a linux box, which had 10 c++ source files in 10 different directories, each one containing an error or two which would prevent compilation or proper excecution. The member was allowed either to change a line or add a line depending on the problem. One problem contained a faulty recursive binary tree search function, where one line within the actual search function was allowed to be modified to correct the error.

  • Shell it out (Shell Scripting)

    We were least prepared for this event. We were banking on the possibility that perl scripts would be allowed, but alas, only sh, bash, csh, ash, and zsh shell scripts were allowed. Two people from every team had 2 computers (Linux) and three hours to solve any number of 15 different problems, ranging from easy to ridiculous, with points allocated appropriately. An easy problem and then a hard problem:

    primfacts- read a number from command line and output the prime factors.
    Examples:
            primfacts 65
            > 5*13
            primfacts 28
            > 2*2*7

    cacheweb- cacheweb downloads and caches local copies of web pages. It takes 2 arguments, the root URL and a level. If the level is 0, then  only the main document (pointed to by the URL) is saved. If the level is 1, then the root page is downloaded locally, and any data (archives or other pages) pointed to by this page are also downloaded locally. If the level is 2, then the root page is downloaded, all pages liked from the root pages are downloaded and cached, and all the links from the newly downloaded pages are also cached.  cacheweb does not accept a level higher than 3. Note that downloaded files should contain only local links/references to local files. Note also that directory structure should be preserved. These cached pages should be completely browseable (to a limited depth, of course) strictly locally, without having an internet connection present.
    Example:
            cacheweb http://www.slashdot.org/ 2

  • Deep Thought (Logic #3)

    In this one person event, the participant is given a packet of 35 logic problems and three hours to compete as many as possible.  Questions fell into several categories:
    Complete the series:
    J,J,A,S,O,N,D,J,_,M,A,M

    1, 6, _, 496

    Mathematical Logic:
    You are standing in a hallway with 1000 doors in a row with 1000 friends.  Your first friend opens all the doors, as they are all initially closed.  Your second friend then walks down the hallway, closing every other door.  Your third friend will open/close every third door he encounters.  After all 1000 friends have walked down the hallway, how many doors are left open?

    A professor invites two intelligent students to his classroom.  He tells them he is thinking of a two digit number.  To one student he whispers the sum of the two digits in the number.  He whispers the product of the two numbers to the other student.  The two students then have the following conversation:
    Student A:  I don't know the numbers.
    Student B: I don't know the numbers either, and I knew you wouldn't know them.
    Student A: I now know the numbers.
    Student B: I also now know the numbers.

    General Knowledge:
    Why should you be afraid today if you were Julius Caesar (The date of the competition was March 15)

    Is Schrödinger’s Cat alive or dead?

  • Run for your life (Montreal Scavenger Hunt)

     This event was stupid. Three team members used a map to walk through Montreal and take pictures at landmarks. Also there were items with point values to collect during the trip.

  • Only the Strong will survive (LAN Gaming)

     Three games were used as means to distinguish the team with the highest-skilled gamers. One person to play each game, competitions were held in Worms Armageddon, Counter-Strike, and Colin McRae Rally 3.


  • Run for your life - Ghetto remix (McGill Scavenger Hunt)

    This was also stupid. Again, three team members had to collect garbage for points, and answer obscure questions about McGill campus, like names of statues and inscriptions on buildings. Items to be collected were more random objects one might find in a refrigerator, trash can, or dollar store.