20110929

C/C++ Programming Competitions, Contests and Challenge





1

Google Codejam


This tournament is a timed contest where all participants compete online to 
solve the same problems under the same time constraints. The competition is
available in five programming languages - Java, C++, C#, VB.NET and Python.
Learn how to participate by reading the instructions.

2

ACM Student Research Competition (SRC)

This competition sponsored by Microsoft Research, the ACM Student Research
Competition is an internationally recognized venue for undergraduate and
graduate researchers to:
  1. Share research results.
  2. Exchange ideas and gain new insights.
  3. Meet & talk with academic and industry luminaries.
  4. Understand the possible practical applications of their research.
  5. Perfect their communications skills.
  6. Receive Rewards & Recognition – the top three undergraduate and
    graduate winners at each SIG-conference-hosted SRC receive prizes
    for $500, $300, and $200, respectively; award certificates; a chance to 
    compete in the SRC Grand Finals where those winners are recognized at
    the Annual ACM Awards Banquet. Through Microsoft Research sponsorship,
    ACM is able to provide more opportunities for students to present their research
    by increasing the number of SRC’s hosted by ACM Special Interest Group 
    Conferences.
3

ACM International Collegiate Programming Contest sponsored by IBM

The ACM International Collegiate Programming Contest (ICPC) traces its roots
to a competition held at Texas A&M in 1970 hosted by the Alpha Chapter of
the UPE Computer Science Honor Society. The idea quickly gained popularity within
the Unites States and Canada as an innovative to challenge the top students in the
emerging field of science computer. More... (in pdf)
4

TopCoder

TopCoder is fast becoming the major league for programming competitions. 
TopCoder brings members together once a week to compete online (Single Round Match) 
and twice a year both online and on location (Tournaments).
Competitions provide an understanding of a person's capabilities through a demonstration
of skill. What was lacking in the world of programming competitions was a format that 
offered immediate and objective scoring. The solution was the creation of a "Single Round
Match".
In addition to regular Single Round Matches, TopCoder holds two major multiple-round, 
elimination tournaments each year. These tournaments span many weeks and include 
significant prize purses along three independent tracks of competition: algorithm, 
component design, and component development. The members can get the benefit from:
  1. Competition - Each Single Round Match offers a fun, time-based, and challenging 
    set of problems that put a developer's skills to the test. This, coupled with Divisions, 
    offer a more level field of competition for newer members in order to build ratings
    and move into potential Tournament opportunities.
  2. Design and Development - Rated TopCoder members are eligible to participate
    in TopCoder Component Development. Members submit design and development
    solutions for these challenging and potentially lucrative projects. Winning solutions
    are rewarded with cash payouts and royalties. For every commercial sale, TopCoder
    will pay the members who designed and developed the component a percentage 
    of the sale.


5

C++/AI Programming Contest


ACM@UIUC's Annual C++/AI Programming Contest. The general Overview:
  1. 3 people per team.
  2. 2 computers per team.
  3. C++ AI programming.
  4. Contest details and API released Friday night at the mandatory Kick-off Session.
  5. Competition is Sunday morning. If you need to leave early, you can still compete,
    but be sure to let us know.
  6. Lots of food and soda provided by us to keep you going. But NO eating in the labs.


6

The Journal of Instruction-Level Parallelism (JILP) 

Championship Branch Prediction (CBP)


The Championship Branch Prediction workshop brings together researchers in 
a competition to find the best ideas in branch prediction. Competitors will submit 
papers accompanied with simulation code giving detailed descriptions of branch
predictors. The best predictors will be chosen to be presented at the workshop.
Read the contest rules. The competition will have two tracks:
  1. Realistic Track. Predictors submitted to the realistic track will have a small,
    32 kilobyte + 256 bit hardware budget and should be reasonably implementable
    as part of a modern microprocessor. The goal here is to find the state of the art
    in branch prediction and give direction to industry for future microprocessor designs. 
    Predictors will be selected by the program committee based on simulated accuracy 
    on a distributed set of traces as well as a more subjective judgment of efficiency
    and implementability.
  2. Idealistic Track. Predictors submitted to the idealistic track will have fewer restrictions.
    The simulation code will have a generous upper limit on the amount of time 
    and space it may take. The goal here is to determine an idealistic bound on the
    accuracy of branch prediction to give the community a goal to strive for, or perhaps
    a reason to give up. Predictors will be selected based solely on accuracy on the 
    distributed set of traces (modulo adherence to the rules described later 
    e.g. readability of the write-up).
Submissions are subject to a set of rules available on the CBP2 website. Simulator 
code for submitted predictors will be evaluated in a C++ simulation infrastructure
This infrastructure contains the distributed traces as well as C++ code to drive a branch 
predictor simulator on these traces. A detailed set of rules will be posted soon. Information
on how to submit the entries will be provided in the weeks preceding the submission
deadline. The simulation infrastructure can be downloaded as an 8MB tar file from the
CBP website. Update: The simulation infrastructure has been updated to remove
extraneous traces and provide additional software.


7

Intel’s TopCoder Multi-Threading Competition Series


Developers, Challenge your Threading skills. Intel® Software Network and 
TopCoder are hosting a 12-month series of world-wide competitions for multi-threading
on multi-core microprocessors. Access the Intel Software Network for all the latest
on threading principles, and then put your knowledge to the ultimate test solving 
coding problems. Mark your calendars! A new competition will be held every month.
  1. This unique contest is designed to help teach threading principles to
    the software developer community. Competitors will face threading 
    challenges based on real-world customer situations. Each competitor’s 
    solution will be evaluated against a set of criteria for the best threading practices.


8

Annual Unnamed UD Internet Contest


The Annual Unnamed UD Internet Contest done as a preparation for the
ACM contest. On October 12th University of Delaware Programming Team 
will host its annual Internet Programming Contest. This contest will differ from 
the traditional programming contest, so make sure you read the Rules section.
The idea of an internet contest is that you write solutions using whatever environment 
is available at your school. You then send the submissions to the judges to have them
look at it. Works like a regular programming contest, but you don't have to 
leave your school.
Submission and clarification scripts can be found here. They're perl scripts, 
so you'll need perl installed. The scripts have changed slightly from last year, 
so you may want to update. The changes are minor, so it's not a big deal if
you don't want to upgrade. If the machines you're using can not receive mail locally, 
then you should definitely upgrade.
After the contest is over, all data the judges use, and all judge's solution programs
will be made available. If, for some reason, you still have a question about something,
you'll be able to email the judges.

 



9

IOCCC Contest


The classic International Obfuscated C Code Contest.

10

Al Zimmermann's Programming Contests


This is the new version of Al Zimmermann's Programming Contests.
These contests are intended for people who like to compete on programming
challenges, and spend much of CPU and/or brain power on them.
Each contest specifies a problem that you must solve.
Generally, it's easy to find a solution but not so easy to find a good solution.
Although these are called "programming contests", technically you don't need to
write a computer program to enter. You can enter whether you use a computer,
manual calculations, or tea leaves to solve the problem. These contests have an 
associated discussion group. If you think you might enter the contests, 
you should join the discussion group. To enter a contest, you just need to register. 
Once registered, you may submit your solutions whenever you like,
they will be automatically scored and the results page will be updated accordingly.



11

International 24-hour programming Contest


Participated by teams, each consists of three people. However,
it's allowed to do all the tasks alone, nobody will check the performance of singles. 
Meanwhile, it is highly recommended to bring two more competitors with you
, because of the complexity of the task. The competition is about teamwork
besides problem solving.
Any kind of development tools can be used. We accept teams using Windows,
Linux or any other operating system. We don't have requirements concerning
programming language, so everyone can use whatever they want.
There are no restrictions on the development environment either; 
you can bring your own favorite, as different parts of the problem may require different tools.
Entering the competition is absolutely free, but you have to hand over your CV.
Participating means, that you agree with the fact that we hand over your CV to our sponsors.
However you may have some expenses on the accommodation.
We cover the food and drink during the competition.



12

INFOMATRIX project competition


INFOMATRIX is an international informatics project competition organized by
Lumina Educational Institutions, the Ministry of National Education, Research and Youth,
and ISMB. InfoMatrix is designed for students aged 12-18 from all over the world
and particularly for the Romanian secondary schools and high schools. 
The rules regarding the proceeding of the contest are laid down as follows:

  1. The official web page of the competition is infomatrix.
  2. Any project related to the categories written below can be registered.
  3. Official language of INFOMATRIX is English. Projects should be prepared 
    and presented in English language.

The projects will be evaluated in a three-step procedure.


13

International Olympiad in Informatics (IOI)


Briefly, IOI are:
  1. The IOI is the premier world-wide high school informatics (computer science)
    competition. Students write programs to solve challenging problems.
  2. The first IOI was held in Bulgaria in 1989.  It was proposed by the United
    Nations Educational, Scientific and Cultural Organization (UNESCO) and 
    is one of five academic Olympiads for high school students throughout the world.
  3. The goals of the IOI are to bring together, challenge, and give recognition to 
    young students from around the world who are the most talented in informatics
    (computer science), and to foster friendship among these students from diverse
    cultures.


14

Internet Problem Solving Contest


The Internet Problem Solving Contest (IPSC) is an online contest for teams consisting
of up to three people. Several problems will be published at the beginning of the 
competition. Each problem consists of a problem description and two input data sets. 
To solve a problem you will have to compute correct output data for the given input data sets
. Usually this means that you will write a program that solves the problem,
but you may produce the output by hand or in any other way.
This file describes technical details concerning the Internet Problem Solving Contest.
Please, read this file carefully, because it contains a lot of important information
not mentioned elsewhere. Before reading this file we advise you to read the IPSC rules
  that give general rules of the contest (teams, divisions, ranking, programming languages etc.).




15

Loebner Prize in Artificial Intelligence


The Loebner Prize for artificial intelligence (AI) is the first formal instantiation 
of a Turing Test. The test is named after Alan Turing the brilliant British mathematician.
Among his many accomplishments was basic research in computing science. In 1950,
in the article Computing Machinery and Intelligence which appeared in the philosophy
journal Mind, Alan Turing asked the question "Can a Machine Think?" He answered in
the affirmative, but a central question was: "If a computer could think, how could we tell?"
Turing's suggestion was, that if the responses from the computer were indistinguishable
from that of a human, the computer could be said to be thinking.
This field is generally known as natural language processing.
In 1990 Hugh Loebner agreed with The Cambridge Center for Behavioral 
Studies to underwrite a contest designed to implement the Turing Test.
Dr. Loebner pledged a Grand Prize of $100,000 and a Gold Medal for the 
first computer whose responses were indistinguishable from a human's. Such 
a computer can be said "to think." Each year an annual prize of $2000 and a
bronze medal is awarded to the most human-like computer. The winner of the
annual contest is the best entry relative to other entries that year, irrespective
of how good it is in an absolute sense.
Further information on the development of the Loebner Prize and the reasons
for its existence is available in Loebner's article In Response to the
article Lessons from a Restricted Turing Test by Stuart Shieber.



16

OpenChallenge


Do you have an idea or concept which you would like to transfer from your
head into code? Or maybe you are in need of some software - like a device
driver for your favorite device and operating system. Publish your idea or need 
here for open source developers. Someone out there might implement it and 
publish the results under an open source license - to your and everyone else's
benefit. Here is a list of current ideas - implement one if you are in need of project. 
Quarterly, the best idea/concept and implementation are awarded with honors and
a prize (a cool gadget, a nerd toy or something else of geeky flavor). A press release 
about the winners is sent to selected news sources. Here are the winners of previous
challenges. Openchallenge.org is a catalyst for creativity and for developing open 
source potential into tackling real world problems and doing public good. By delivering
periodic awards to selected contributors we hope to encourage individuals and 
organizations to publish the results of their creativity under an open source license
and spirit. Openchallenge is a catalyst for materializing creativity and for channeling
open source potential into tackling real world problems.
By delivering quarterly awards to two selected contributors we wish to encourage 
individuals, organizations and companies into publishing and materializing the results 
of their creativity under an open source license and spirit. You can participate in the
openchallenge by releasing the results of your brain activity under open source:
think, do or do both.

17

Project Euler


Project Euler is a series of challenging mathematical/computer programming 
problems that will require more than just mathematical insights to solve. 
Although mathematics will help you arrive at elegant and efficient methods, 
the use of a computer and programming skills will be required to solve most problems.
Please be warned that the problems are challenging and you are unlikely to make much 
progress if you have no knowledge of programming. Having said that, this is both the
perfect environment and opportunity to learn new techniques and refine your
programming skills.
In order to track your progress it is necessary to setup an account and have
Cookies enabled. If you already have an account and would like to login,
click here. To setup a new account click here.
As the problems are challenging, you may wish to view them before registering 
by clicking here.
When new problems are added to the database they are initially worth 20 points. 
However, each time a problem is solved by a registered user, it reduces slightly in value.
As a result, easy problems, which will be solved by most users, quickly become
low scoring problems. Conversely, truly difficult problem will remain high scoring.
Your overall score is not fixed and will change if any of the problems that you have
already solved change in value.
It is hoped that this entirely dynamic and original scoring system will, on the one hand, 
add an extra dimension of interest to solving problems, but on the other hand, will lend
itself to users of all abilities. That is, it should allow beginners to identify the easier
problems to get started with, and advanced users to target the more difficult and
challenging problems.
Please note that each problem is designed according to a "one-minute rule", which
means that although it may take several hours to design a successful algorithm
with more difficult problems, an efficient implementation will allow a solution to
be obtained on a modestly powered computer in less than one minute (see note). 
Of course solving a problem is the ultimate goal, but if you consider yourself a 
skilled programmer/problem solver you may like to retry some of the challenges
that took longer to solve on your first attempt.
A forum is available as an opportunity for users to discuss strategies used in
solving the problems, with each problem designated its own thread.
However, you will only be able to gain access to the thread once you 
have solved the problem.



18

PHP Contest


It is a PHP coding contest. This is your chance to show off your skills to the whole world.
A new contest every month or so. This contest is to prove you can do it.
You will get recognition on the front page of codewalkers.com, and
if you have a web site it will be listed also. Your winning code will 
also be posted on Zend.com in a special section of their code gallery.
All you have to do is check out the current contest and then code it. 
All submissions must be PHP only however the HTML is allowed and
any extension commonly available to PHP is allowed. Disallowed is any 
other type of scripting language (server-side or client-side).
Simply send it to contestsubmit[at]codewalkers.com. Please make sure
you place a comment at the top of your code with your name and email address.
All submissions are subject to being posted here on codewalkers.com and on Zend.com
You, the author, will retain all copyrights to your code. Nobody but you will
have the right to claim it as their code.



19

The Rapid Application Development Race - RAD Race


The RAD Race is a (registered) concept that took a lot of effort to develop
and refine during the years. It is mostly intellectual work; each public
assignment is completely original and therefore very copy sensitive (see further).
The "Original" also stands for real, tangible facts and essentials. 
That is: a working program; instead of talk or and endless list of product features. 
Simply the best program wins, period.
We therefore disclose all in-depth information as soon as we receive a signed
and dated Non Disclosure Agreement ("NDA") from you. Please excuse us for
the inconvenience this may cause. The Original RAD Race is an independent 
programming competition focused on:
  1. Delivering a working business program.
  2. In controlled and verifiable conditions.
 It is open to any kind of software development tool, toolset and/or language
and any team of 2 persons.



20

RoboCom


RoboCom is a game for programmers. With your program, you determine how
your robots will move, communicate with others or even build more robots.
Your goal is to put the other robots out of action. But not with weapons! 
There are much more intelligent ways to do that - write a virus and infect them. 
Or re-program them to work for you.
Before the game starts, each player writes an assembler-like program
which has to decide for itself later on, in order to win the game. The pieces on the 
chess-like field are robots, which have the abilities to move, multiply, exchange
program code etc. The goal is to put the other players' robots out of action while
staying functional yourself.
RoboCom is not a military game. There is nothing like weapons: the only way to
influence another robot is to transfer program code. And that makes it particularly 
interesting. The programming language is easy to learn, however it provides an
amazingly wide spectrum of different strategies, which are all successful in another way...



21

The Sphere Online Judge


The Sphere Online Judge:

  1. An online judge accepting solutions in C, C++, Pascal, JAVA, C#, Perl, 
    Python, Ada, Smalltalk, Fortran, Assembler, Icon, Ruby, Pike, Haskell, 
    Ocaml, Prolog, CLIPS, Whitespace, Intercal...
  2. The system is developed at the Gdańsk University of Technology, ETI 
    Faculty and draws on a prototype created by Jacek Dąbrowski, MSc. Thesis (2003).
  3. See: online judge site, the system opened on 01.06.2004.
 Plans:

  1. Creating a huge problem set.
  2. Hosting numerous on-line contests.
  3. Enabling the testing of interactive programs & games.

The SPOJ Project is developed by the Sphere Interest Group at the Faculty 
of ETI, Gdansk University of Technology, under the auspices of 
the Department of Algorithms and System Modeling. The core
of the system is composed of:
  1. A (hopefully) exploit-secure online judge program for checking
    the correctness of algorithmic programs written in different programming 
    languages (authors of Whitespace and Intercal programs
    know what we are talking about.
  2. An intuitive content management system for problem setters
    and administrators.
  3. A network user interface for the judge, featuring a PHP frontend 
    and databases with information on users, problems, submitted solutions, etc.
  4. A subsystem for organizing leagues and contests (currently in preparation).
It is also worth noting the informative value of the Sphere Online Judge
, which makes use of (and - to a significant extent - grants users access to) 
the following resources:
  1. An extensive problem set, which contains not only select problems 
    from national and international programming contests, but also original
    tasks carefully prepared in collaboration with the team of expert problem
    setters associated with the project.
  2. An online status display system, complete with statistics and rank lists
    of the best, most active and most prolific programmers and countries,
    and many many more...
You are welcome to visit project page (hosted as part of the official
Sphere Interest Group website), which contains up-to-date information 
on the development team and the progress of the project. See a problem list: problem list.



22

LiveCoda: Real time programming competition


This programming competition is open to anyone. Teams that register will
be allocated a specific time. So you only need to make sure you are around 
for that time. However, the venue is very comfortable and the bands playing 
are well worth staying around for.
LiveCoda is intended to be a C programming competition. However,
if you don't know C or would prefer to use a different programming/scripting 
language just state your preference on the registration page and we'll do our 
best to provide it.
The solution will have the form of reading in a stream of numbers
from standard input (a list of red, green, blue values). This image will 
be broken in predefined ways which you need to fix. The output
of the program should then be a list of red, green, blue values.
All problems will take this form, so as the night progresses there will
be and opportunity to learn from other teams tactics...



23

It is by Microsoft which create the Imagine Cup in searching and budding
the future software breakthrough, a future career, or a flourishing new industry. 
The Imagine Cup encourages young people to apply their imagination, 
their passion and their creativity to technology innovations that can make a
difference in the world. The Imagine Cup has grown to be a truly global competition
focused on finding solutions to real world issues.
It is open to students around the world, the Imagine Cup is a serious
challenge that draws serious talent, and the competition is intense. 
The contest spans a year, beginning with local, regional and online 
contests whose winners go on to attend the global finals held in a different location 
every year. The intensity of the work brings students together, and
motivates the competitors to give it their all. The bonds formed here 
often last well beyond the competition itself...


24

"...Alumni from each of the participating schools who are now 
employed by Microsoft organize the College Puzzle Challenge out of a love 
for fun and competitive ways to challenge technology-minded students
. We’ve provided the prizes, food, and all the fun puzzles we know you’ll enjoy. 
While this is not quite a recruiting event, we will be accepting résumés,
so feel free to bring one along! And of course, we’ll be happy to answer 
any questions you may have about working at Microsoft..."
jai mAta di

No comments:

Post a Comment

thanks