CodeChef
  • PRACTICE
    • Easy
    • Medium
    • Hard
    • Challenge
    • Peer
  • COMPETE
  • DISCUSS
    • Wiki
    • Forums
    • Blog
    • Twitter
  • COMMUNITY
    • CodeChef Meetups
    • Campus Chapters
    • Host Your Contest
    • User Groups
    • CodeChef TechTalks
  • HELP
    • Frequently Asked Questions
    • FAQ for Problem Setters
    • Ranks
    • Tutorials
  • ABOUT
    • About CodeChef
    • Team CodeChef
    • Press Room
    • CEO's Corner
    • About Directi

The REAL motivation behind CodeChef…

Posted by The Chef on April 1st, 2010 Filed in About, Announcement View Comments

For over a year now, we at Codechef have been setting up complex coding problems and trying to find the best programmers to solve them.  We are often asked why we do this.  Why do we make people rack their brains just to solve these hypothetical problems?  Have you ever considered the thought that these problems might not just be hypothetical?

Until now, we told you that we were just trying to promote awareness about algorithms and the like in India.  However, due to recent security clearances granted by the Indian Space Programme, we can now be more honest about our motives.

  • Packing materials for the mission is always a huge headache. Packing the boxes helped us solve this. The Best Box took care of creating the perfect box.
  • Once on the moon, the robots needed to move about effectively. Bytelandian Robots came to our rescue.
  • A whole series of chemical experiments were optimized using the results of Chemical Reactions .
  • We even took care of the nutrition requirements for our astronomers with Healthy Dinner Party.

You may be wondering why we’re telling you all of this.  Well, here’s the answer: This is the final Codechef Contest.  All of the problems from this month’s set are related to specific issues that the Chandrayan Space Team is working on to finalize preparations for the rocket launch.

We are sorry if we had misled you in past, but we did it for India.  Now, the country needs your help.  We ask that you spend some extra time to help the lunar mission by submitting some super fast code!! (we prefer C/C++ to someOtherLanguage)

Cheers!
The Chef


  • Share/Bookmark

The new rating system

Posted by Aniruddha on August 28th, 2009 Filed in About, Announcement, Features View Comments

Greetings everyone!

We are happy to introduce a rating system for Codechef based on the contests we have every month. In brief, the rating system will have the following features.

1. Every user will have a rating. The user with the highest rating will be ranked 1, the user with the next highest rating will be ranked 2 and so on.

2. The ratings for the users will depend only on how they perform in the contests and not how they perform in the practice section.

3. Every contest problem will get a particular value based on the number of users solving that problem. The maximum value for a problem tends to the value 5 and the minimum value for a problem tends to 1. So, every user is guaranteed at-least 1 point for solving a problem. The selection of the value 5 was to give sufficient room for the top performers to increase their rating. Selection of a smaller range of values would let those participants solving only easy problems and participating frequently overtake those not participating frequently but performing exceptionally well when they do. Suppose the total number of users who have solved a particular problem is PS and the total number of users who have participated in the contest is TS, then the point value for a particular problem is 5 – 4*PS/TS. So, if there are more users successfully solving a problem, it’s value will be less and vice versa. The Challenge problem point value is calculated by taking the product of the score for the challenge problem with the maximum rating a contest problem can have i.e 5.

4. Suppose a user has solved P binary problems and 1 challenge problem and at the end of the contest, these problems have the values V1, V2, .. ,Vp then the total rating score S of the user for that contest will be V1+V2+…+Vp + 5 * (score of the user for the challenge problem).

5. The new rating of the user will be old_rating+S.

Also, every user’s profile page will now have a rating graph along with the current rating and rank. Your feedback in this regard is much appreciated :)

Regards,
Aniruddha.

  • Share/Bookmark

FAQ for problem setters

Posted by Aniruddha on July 24th, 2009 Filed in About View Comments

For the past few weeks we have been getting questions from people interested in setting problems for our contests. Here is a quick FAQ as to what you need to do before sending us the problems and if/how your problems will be used in our contests. Now, at present, we have 2 types of problems in our contest. The first category is the exact algorithm contest problems which have either a wrong or a correct answer. The other type is the challenge problem that we have in each contest. This problem is such that it does not have a deterministic solution. Which means that there is no algorithm that will give an optimal answer for the problem. Submitting problems for both these categories is slightly different.

Exact Algorithm Problems :


Q. What kind of problems are you looking for in the Exact Algorithm Problems category?

A. We are looking for problems which are not standard ones or ones which are not easily ‘googleable’. The problem should be such that it induces the solver to spend time to think of a solution to the problem rather than search for it online.

Q. What files do I need to submit along with the problem?

A. You need to submit the following files :
1) The problem story line. This is the main body of the problem that the participant will read. This should not be ambiguous and should be clear and interesting. It should specify the input format, the output format as well as the constraints on the input and if any, on the output.
2) The solution in a programming language of your choice. This solution should be such that it takes in the input data in the specified format and produces the correct output according to the output format.
3) The test input data. This input data should have all the corner cases covered and should have a few randomly generated test cases too. If there are multiple input files, label them as 0.in, 1.in, 2.in and so on and place all of them in a folder called ‘input’.
4) The output test data. This is the output data corresponding to the input data mentioned previously. The expected output for 0.in should be placed in 0.out, for 1.in should be in 1.out and so on. Place all these files in a folder called ‘output’.
5) A small write-up of the approach taken. You need to give us a small write-up about the approach taken to solve the problem.

Q. How do I send you all the files?

A. Place all the files and folders in another folder named whatever you wish to call the problem. Archive it using an archiver, preferably in .zip or .tar.gz format. Send this archived file as an attachment along with your contact information to admin@codechef.com

Q. How many problems can I submit?

A. You can submit as many problems as you like. If we like a problem, we will use it in one of our contests. If we decide to use your problem in our contest, you would not be eligible to participate in that month’s contest. You might want to send us a set of 4-5 problems so that we might use a higher number of problems in the same contest.

Q. How much do I get paid for submitting the problem?
A. There is no payment for submitting a problem. However, if we decide to use your problem in our contest, we will compensate you accordingly. The compensation would depend on the quality of problems you have submitted. An easy problem would have less compensation compared to a hard one.

Challenge Problems :

There are a couple of things different for challenge problems.

Q. What kind of problems are you looking for in the Challenge Problem category?

A. We are again looking for problems which are not very highly researched. The approaches for such problems should not be available online easily. The problems should not have a polynomial time solution. The challenge problem has a scoring mechanism based on certain parameters. This scoring mechanism needs to be explained properly in the problem statement submitted by you. Also, you need to specify whether the optimal solution minimizes this score or maximizes this score.

Q. What files do I need to submit along with the problem?

A. You need to submit the following files :
1) The problem story line. This is the same as the earlier category. Along with the constraints and other things, you need to mention how the problem is scored and also whether the optimal approach should maximize or minimize the score.
2) The input test data. This should have random and large test cases. Place all the input files in a folder called ‘input’.
3) A program in a programming language of your choice that reads the output and returns the score for that output based on the scoring parameters.
4) A write-up specifying why the problem does not have a polynomial time solution. Some links or research papers pointing to this would be appreciated.

  • Share/Bookmark

Important Rule Change for July Contest

Posted by The Chef on June 30th, 2009 Filed in About, Contests View Comments

Chocolate Shakes,
We’ve had some complaints in the last contest about participants reverse engineering test data. While this isn’t necessarily “wrong,” in keeping with the spirit of finding the best solutions to the problems given, we’ve instituted a small rule change. This time around, the challenge problem will be rejudged at the end of the contest, with entirely new test data.

We considered other approaches for all problems including:
* Rejudging all solutions at the end of the contest with new test data (not just the challenge problem)
* Capping the number of submissions per user per day
* Allowing users to only submit solutions at certain time intervals (i.e. one solution per five min)

In the end we have done our best to come up with better, bigger and more random test cases and are holding off on these other change (for now). If you believe there are additional ways to improve the contest format, please let us know.

Cheers,
Amit (The Chef)

p.s. if you wanna see how pretty I am, check out our new Twitter background.

p.p.s don’t forget our first DesignChef competition along starts tomorrow, help us out… spread the word.

  • Share/Bookmark

Gamer’s Challenge Winners!

Posted by The Chef on June 19th, 2009 Filed in About, Contests, Prizes, Winners View Comments

Egg Biryanis,
We are pleased to announce our winners for our first ever Gamer’s Challenge. (drum roll please….)

First Place:
Kushagra Gour – Chef of War – All around awesome game, well done!

Second Place:
Meet Shah – The Spoon Hunt – This game was a lot of fun to play (a staff favorite), we wish the graphics were a little better.

We have some other “honorable mention” awards, winners of these will each receive t-shirts.

Best Looking Game
Jugal Manjeshwar – CodeName Chef – Beautiful game, gameplay is repetitive though. By varying the enemies on different levels or including some power-ups this could have been great.

Best Javascript Game
Nikhil Marathe and Denny George – Little Chef – Hilarious story, we really enjoyed it. Game is too hard/quick though.

Best Game by Someone Who has Already Won a Prize
Kushagra Gour – Squash the Bugs – Another great game

Best Use of Binary Dumps and Dangling Pointers
Rasagy Sharma – Run Chef Run – Excellent concept for a game, love the floating pointers. Gameplay is original as well.

Thank you everyone who participated, this was a lot of fun for us, hope you enjoyed it as well. We will have other types of gaming contests in the future.

Update Aug 3rd… We now have photos of the winners with their prizes

Kushagra Gour - 1st in the May Gamers Challenge

Kushagra Gour - 1st in the May Gamers Challenge

Meet Shah - 2nd in the May Gamers Challenge

Meet Shah - 2nd in the May Gamers Challenge

Cheerio,
Da Chef

  • Share/Bookmark

Opening up the Kitchen

Posted by The Chef on March 25th, 2009 Filed in About, Features View Comments

Hash Browns,

Our goals with CodeChef are to challenge and engage the developer community as well as provide a platform for competition and improvement.  We’ve heard from many people that when they get a wrong answer or time limit exceeded they aren’t sure how to debug their submissions.  We are working on a few ways to improve this:

  • Additional tutorials describing various approaches to debugging and reducing execution time.
  • An interactive mode which allows you to specify inputs which will run on our testing infrastructure and display the output (possibly only available in the practice arena).  This will allow you to debug any infrastructure or compiler differences and see how your code runs on the machine it is evaluated on.
  • Additional information on submissions (possibly only available in the practice arena) – For each test case, the number of inputs, the result, execution time and time limit.   This will let you know if your approach is correct and you just need to optimize your solution to fit within the time limits, or if it’s back to the drawing board.

For our April Contest, we will also be experimenting with another major change.  After the contest is over we will make all code submissions for problems within that contest, publicly available.  Eventually we plan to allow comments on individual submissions as well.  We hope this will allow less experienced developers to learn from their peers and generally promote knowledge sharing.  We look forward to hearing your feedback on these initiatives.

Cheers,

The Chef

  • Share/Bookmark

Calling All Students, Bloggers and User Groups

Posted by The Chef on February 25th, 2009 Filed in About, Campus Chapters, Features View Comments

It’s been just over a month since we’ve launched and we’re really excited about the way things are going.  We now have over a thousand registered users and accept hundreds of code submissions a day.  The response has been great, but we’re not done.   As a way to continue to challenge, engage and give back to the developer community, we’re pumped to announced a few new initiatives.

CodeChef Campus Chapters – Are you a student interested in setting up a CodeChef Chapter on your campus?  Each month we’ll send you optimal solutions to specific contest problems, tips & tools to become better software developers and (of course) some awesome CodeChef merchandise (everyone looks cool in chef’s hat).

Blogger Community Program – Are you a blogger interested in spreading the word about CodeChef?  We got what you need: exclusive access to content, press passes and more.

User Group Outreach Program – Are you part of a user group which is enthusiastic about programming?  We’ll give you a place for your meetings, and a chance for your users to network and gain recognition.

First contest starts Sunday, keep practicing…

  • Share/Bookmark

Welcome to CodeChef!

Posted by The Chef on January 22nd, 2009 Filed in About, Announcement View Comments

We’re happy you’re here.  At CodeChef, we want to provide you with an opportunity to go beyond your every day work and studies and improve your coding skills through online competitions, practice problems and discussions (and hopefully have some fun too!).

We will be rolling out a number of exciting features in the coming months, stay tuned to the blog for updates.  If you have any questions, comments or feedback let us know at feedback@codechef.com.

Bon Appétit!

  • Share/Bookmark

Recent Posts

  • ACRush eclipsed
  • … and we meet!
  • Progress report of April contests
  • Moving into a New Kitchen.
  • The color and mischief of March contests

Categories

  • About (8)
  • ACM ICPC (9)
  • Announcement (119)
  • Campus Chapters (6)
  • College Contests (8)
  • Contests (126)
  • Events (23)
  • FAQ (1)
  • Features (34)
  • Languages (1)
  • Meetup (5)
  • Open Source (1)
  • Practice Problems (7)
  • Prizes (17)
  • Problems (5)
  • Programmer of the Month (27)
  • Tech Talks (6)
  • Tutorials (15)
  • Winners (80)

Recent Comments

  • CodeChef on ACRush eclipsed
  • CodeChef on ACRush eclipsed
  • random123 on ACRush eclipsed
  • Sagar Malhotra on Moving into a New Kitchen.
  • Guest on Moving into a New Kitchen.

Recent Pictures

Blogroll

  • Documentation
  • Plugins
  • Suggest Ideas
  • Support Forum
  • Themes
  • WordPress Blog
  • WordPress Planet

Archives

  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009
  • March 2009
  • February 2009
  • January 2009

Company Blogs

  • Directi
  • .pw Corp Blog
  • CEOs Blog

Careers@Directi


  • About CodeChef
  • About Directi
  • CEO's Corner
  • CodeChef Campus Chapters
  • Blogger Community Program
  • User Group Outreach Program

© 2009, Directi Group. All Rights Reserved.

Sponsors