17/10, morning assembly time at City Montessori School (CMS), Lucknow, Gomti Nagar branch: A group of five hundred students from grade XI and XII gathered in the main auditorium. I go up on stage to explain all these budding students the concept of competitive programming. “Hello juniors” “Well, any guesses as to why I called you all as juniors?”… “Hmmm… as many of you might have guessed it, yes, I gave my ISC board examinations in this very same auditorium this year only”. “Now coming to a formal introduction, I am Karan Saxena, a First year Computer Science student at Sir MVIT, Bangalore. I am the Technology Head at Google Students Club and a freelancer at JAR (Just Android Resources) – India’s first all Android magazine.”
I then go on to ask them the next question- “What is a code?” I am expecting some enthusiastic answers but my hopes are soon dashed to the ground as only two hands go up. Nevertheless, I call one of them up on stage to answer. “Code is a small part of a program” “Correct. But don’t you think that’s a very dull kind of a description?” I then give them an intuitive definition of ‘code’- “Code is Logic. It means understanding the process and making it simpler. It is converting simple day to day tasks into mathematical terms and symbols”, I explain. I then show them the video created by CodeChef. Next, the obvious question is ‘Why should I code?’ or ‘What kind of people should learn coding?’ For the answer, I show them the 5min version of Code.org video.
After these two videos, I go for an example of ‘Binary search’. Over the next few minutes, I explain them ‘Binary Search’ from grass-root level with the help of a presentation. Then I announce that I have a twitter sticker and whosoever will give the correct complexity of binary search will get it. In the intermediate time, I explain them the definition of complexity. A student comes up and gives a correct answer as O(log N). I see a puzzled expression on the faces of students. I then intuitively explain them how log N came and that log is with base 2 and not 10 or ‘e’. Over the next few minutes, I go on to explain them that how India is technologically progressing but it is nowhere when it comes to competitive coding. I tell them that the only solution of this problem is to start early, and the way to start early is to practice and participate as much as possible. I then explain them what is ZIO/ZCO, IOI and ICPC. I tell them that nobody has ever achieved a gold medal in IOI. I explain them about ‘CodeChef Go for Gold’ initiative and ‘CodeChef Lunchtime’ programming series and that they should start participating in it as early as possible.
Watch the video of the assembly here: Karan Saxena, introduces CodeChef to students from City Montessori School, Lucknow, India
Wrapping up the session, I invite the interested students to the computer lab where they can have a hands-on session and ask their doubts. About 30 students turn up in the computer lab and have conversation with me over the next one hour. It was nice to see the enthusiasm with which they put forward their queries. All of them left with a sense of satisfaction and eagerness to participate in the upcoming ZIO/ZCO.
Overall, I felt very satisfied with the session. It was small yet effective step towards promoting programming culture. I’ve done my class XI and XII from CMS only. It’s an outstanding academic institution and is counted among premier institutions in the country, but the thing I noticed during my time is that there is very less focus on programming, specifically competitive programming. Students are extremely brilliant here but only focus on science subjects and study computers only with point of view of examinations. I wanted to change this and hence approached the principal, Ms. Manjit Batra, who, gave me permission to conduct this session for the betterment of the students. She also allowed me to act as a mentor to the students and help them with their doubts and also to keep them updated with the contests happening. I’ve created a group on facebook where all the class XI and XII students can discuss their programming problems and solutions with other students from the same institution. All of them have my number and are welcome to call me anytime they feel necessary. I’m constantly in touch with all of them via the group. Many of them are participating in this year’s ZIO/ZCO and I’m hoping to get a good result from these students.
Lastly, I would like to thank the whole of CodeChef team for taking up this one of its kind initiative which will prove to be very useful for budding young programmers. I wish them a grand success in this endeavor.
As the time nears the declaration of the selected list of teams for the onsite, we think we must own up the mistake and issue an apology. We understand that there were some problems with the online round for ACM ICPC 2013 IIT KGP regionals. For those who missed it:
For the first issue, we investigated and found out that it was caused due to an un-optimised query that fetches you all the submissions of a particular problem in the practice section! We are in the process of fixing it, but we thought we should at least tell you what the reason is while the fix happens. To make up for it, we had extended the contest by another 10 minutes. We also eliminated all penalties for those who were affected by the slowness and ended up submitting the same solution multiple times.
The second issue impacted users much more. And we realised that we had goofed up, only after the contest. At this stage, we sat down and evaluated all the options to salvage the situation. We knew that we could not be fair to everyone from that point. No matter what we did from there, there would be one section who would be affected by this mistake of ours. Considering every possible scenario (including a re-contest), here’s what we decided to do:
Change the test data such that the solutions which solved the problem without sorting the output list also passes. This essentially also meant that the problem no longer required a DP solution to pass and became easier than what it was intended to be. We rejudged all the solutions which had not passed during the contest for this problem with the new test data, leaving aside those that had passed. This resulted in more teams now solving the problem.
Some of you are bound to feel (especially those who wasted a lot of time on this problem) that this isn’t fair. We know it, but there is not much that we can do about it. We screwed up, and we’re really sorry. Here are the other options and an explanation of why we took this approach:
While we acknowledge that we have goofed up and we regret it beyond what we can put across, we also think, that not being stuck on a problem, you are unable to solve, is among the many things that can propel your team to be a good ICPC team. A team of three wasting all their time on a single problem can cause a lot of frustration, but then that should not warrant wasting the time of so many other teams that have done well and also learnt to deal with such situations and got more efficient.
Some people will undoubtably feel like we should’ve taken one of the other approaches listed above. We’re sorry, we cannot do that. Don’t hate us. We know we have goofed up. And we did try our best to be as fair as we possibly can in the given circumstances. We wanted a good fair contest as much as you all did. We did receive some positive feedback on the problems being good as well. We have also published the editorials for the problems. We did try to do as much as we can.
For those who will not be able to make it to the onsites due to this mistake of ours, we sincerely apologise. We know, nothing can make up for it. But there is only so much we can do. Please do not get demotivated and do not give up. Please practice hard for next year. We will be around to help you all in your preparations. We assure you, that we will be extra careful next time around. We are sorry.
Nothing give jitters to the programmers as much as a big programming carnival. And if you are a programming enthusiast in India, that time for you is now. With ACM ICPC India regionals fast approaching, everybody is busy with giving final touch to their preparation, and perhaps packing bags, by now, for the regionals. And we wanted to help our young friends break out of their nerves and put all their preparation to test, with our October Cook-Off 2013.
While our Mega Cook-Off was set to test the preparations of the ICPC aspirants, it also brought the opportunity for the top 75 Indian Students, as opposed to 50 last year, to have their ACM-ICPC expenses reimbursed. Yay! The details about it can be read here. With all that we were all set for the contest, which promised some tough competition and a lot of fun.
The contest began with first accepted submission on Polo the Penguin and the XOR inside the first ten minutes of the contest. The quick first few accepted submission, indicated a free flowing contest, which was a pleasing sign as it meant that the preparations were good. However, there were instances when the contestants found themselves tangled in problems, especially the ones who tried to find some luck in Polo the Penguin and the Lucky String. It was only after an hour that EgorK cracked it. However, by then three other problems were already seeing accepted submissions, frequently. The problem set was nicely balanced to let the users have fun and test them without causing any turmoil. And it was acknowledged by the contestants and our fellows on the problem setting panel alike.
As the contest progressed, the number for participants and submissions started soaring, indicating a good night for us all. The fight among the contestants (from India), was not only to be among the top, but also to finish up among the top 75 students from India to have their ACM ICPC travel expense reimbursed. And if the numbers are to be believed, they all fought belligerently.
Here are all the numbers to let you decide.
Let’s say hello to the the top performers, Indian as well as Global:
Firstly, the Global:
And, now Indian top five:
The October Mega Cook-Off 2013 was deemed as a warmup for the impending ACM ICPC India regionals. However, we wanted you all to chill, and just participate with all your heart and soul. And we hope you all did. There is still sometime before the onsite regionals and you shall be even better prepared for the onsite event, so All The Very Best from all of us.
Now, before we sign off, let us thank the people responsible for the nicely balanced problem set, which came from Vitaliy Herasimiv, the testing for that, which Tasnim Imran Sunny did splendidly, and the delectable editorials to celebrate the contest from Tuan Anh. The additional colors for the contest in the form of Mandarin and Russian translation came from Minako Kojima and Sergey Kulik.
And a big thanks to all you wonderful people for making it such a wonderful contest. We have always cherished your feedback and suggestions, so keep sending them at email@example.com.
Till next time, it’s adios.
See you at the contest.
We all have a preconceived notion about any competition where the big guns are going up against each others. It becomes easy for everyone to predict the outcome of the contest and more often than not, those prediction comes close to the actual result, if not all true. However, as soon as even a single big name goes missing from the participant table, the slot atop the rank table opens up for almost every participant. That is what happened with our October Challenge 2013. As soon as it was revealed that ACRush, djdolls, and mugurelionut will be on the problem setting bench, there was a sense of relief among the participants. And they all were set to give a shot at the top slot. However, the brawny kgcstar, was still there along with other seasoned campaigners including anton_lunyov, kevinsogo, stzgd, and others to ensure a stiff competitiveness in the air. And with that began our October Challenge 2013.
The October Challenge 2013 had a special flavor added to it in the form of Mandarin translations for all the problem statement. This made it the first multilingual contest of CodeChef, and for our native Mandarin speaking friends, made it easy to understand the problem statements. The Mandarin translation came from Minako Kojima, so a big thanks to her. The contest opened to an action packed weekend, with Lira getting help from all quarters. While Helping Lira made life easy for the participants, Three-Degree-Bounded Maximum Cost Subtree, Fibonacci Number, and Kamehameha were putting the participants to a tough-yet-exciting test. And it’s good to see that they all came out with flying colors.
But who came on top? let’s see the rank tables and find out.
First, the global winners.
And the Indian winners:
Now, let’s move on to our special winners.
Firstly, the young brigade from schools:
And now, the top three Global and Indian users having highest scores other than the winners.
The very first weekend of the contest made it apparent that everyone is going all out to sharpen their programming skills ahead of the impending ACM ICPC regionals, and by the end of the contest we had the numbers reflecting that. Here are those figures for you.
With ACM ICPC just around the corner, it was great to see the number of participants go up in the final stages of the contest. But the real spice was added in the beginning of the contest in the form if the challenge problem scoring changes, which meant that even after the contest is over, there will be not a clear winner until the submissions of the Challenge Problem are being re-judged. This kept a lot of people on the edge of their seats even after the contest was over, including us. Though, the rank table did not changed drastically after the re-judging, but we did saw some shuffle of positions atop. Did you observed any change in your position in the rank chart? Do share it with us. Also let us know what you think of the changes that were brought into effect from October Challenge.
With problem setting panel featuring Tom Chen, Bruno Oliveira, Ivan Zdomsky, Kaushik Iska, Mugurel Ionut Andreica, Sergey Nagin, TianCheng Lou and Vitaliy Herasymiv the problem setters bench for the October Challenge had some real masters of the craft penning down the problems for the contest. The testing of all those problems was done by ShangJingbo, who ensured that the problem set is balanced enough to test the participants and to let them enjoy the contest the fullest. The elaborate editorials came from Ajay Kumar Verma, who has all the expertise required to draft well understandable editorials. In the end all their efforts were appreciated and accepted with lots of love from participants all over the globe.
That sums up the tale of the October Challenge 2013, which saw some twists in rules, some new names in the rank tables, and most importantly gave everyone fun and exciting competition. We will be back with the tale of October Mega-Cook-Off 2013. But till then, why don’t you tell us what you thought of the October Challenge?
So, send us any feedback, suggestion, or query you might have in the back of your mind at firstname.lastname@example.org.
Also, coming your way is the ACM ICPC Asia-Kharagpur Site First Round Online Contest 2013, we hope you are ready for it.
But till the next big blast, it’s adios from everyone here at CodeChef.
Following your discussions on our forum under “Changes from October Contest” and “Separate final test cases for Challenge Question,” starting from October Challenge 2013, after a lot of deliberation with our problem setting panel, we will be making a few changes in the way the scores for the challenge problem are being calculated:
This will be applicable for long challenges starting from October Challenge 2013. However, these are only provisional and we may change them based on the feedback that we receive from you guys.
How do these changes affect me?
In two simple ways:
Whatever you think of the above mentioned changes, do share with us.
Gear up for the October Challenge 2013 with a pinch of new rules to spice it up.
All the best.
The September iteration of our Lunch Time programming series did not see the same notable participation, as our August Lunch Time did. And it makes us a bit sad, as we want more school students to take part in it. Now, there can be various factors behind the comparatively low participation. But if you have any specific reason which is stopping you to take part in our contests, like tough problem set or the timing of the contest, feel free to let us know. We will try and make sure that it is addressed.
We are sure that all those who did not participate this time will show up in the next contest. Also, if any of you did not participate because you did not do well in the last contest then it is our sincere request to leave it behind and move on. It is only when you keep on participating, you will master the art of programming. We believe, success just happens – really. No one can prepare you or teach you to be successful. It is something that you will have to learn on your own, and master on your own, pretty much like programming. The more you practice and participate in such contests, the more you will learn about it.
So, get up, brush yourself up, for the next October Challenge 2013, which is just around the corner. Put the fret of the past contest to rest and start afresh. We are sure all you young geniuses have incredible potential and that we will see you in our next round of contests, let alone the Lunch Time. By the way, the October Lunch Time 2013 will be held on October 27th, 2013 at 11:00 am.
Now, let’s congratulate our friends in the rank tables of September LunchTime 2013.
And now, the total stats for the contest:
A big congratulations to all the participants for their splendid performance in the contest. You all are awesome.
The numbers, this time around, definitely were a bit on the lower side, but that, together we all can change. And that we should change. The bigger the contest, the healthier will be the competition, and the more fun we will have. You see its a win-win situation for all of us. So, do not hold yourself back, get up and join the league of extraordinary programmers from across the world.
We hope to see all you brilliant young minds, in all our contests. So, starting from the impending October Challenge 2013 we hope to see more and more of our school force taking up the challenges and paving their way up the programming ladder.
If there is something that you want to share with us, your feedback, suggestions, or your tiffin box, we would love to have them. So, keep them coming at email@example.com.
Till next time, TA-TA.
If there is one thing that differentiates “greats” from the rest, it has to be their constant pursuit for perfection. They never get satisfied with being “good-enough”; they want nothing but to be the best. When the time comes, they put in all that they got in their quest for being the best. This holds true in all spheres of life, and we recently witnessed an instance in our September Cook-Off 2013.
After being denied the top spot in the September Challenge 2013 by kgcstar, the mighty ACRush came all guns blazing in our first of the two ACM ICPC warm ups, the September Cook-Off. And, in typical ACRush-style, he took away the contest flawlessly. While the problems from our young problem setter Roman Rubanenko were putting everybody to tough test, ACRush was leading the pack of very few programmers who were not much troubled by the Big Number and Tree that came in their way. Following him at the second spot in the international rank tables was qwerty787788, who was making his debut in our Cook-Offs, and we must say, going by what we saw, we might be looking at a new star in the making.
While, the international rank tables were glittering with the presence of a pro and a sensational debutant, the story of the Indian table was not any different. With the ACM ICPC India regionals approaching, the Indian students too seemed all geared up for the contest. The contest did not see a plethora of submissions in the initial few minutes, but as the contest progressed the numbers started soaring. While the seasoned djdolls lead the Indian charts, so was sidsgr88, who in no means is new to CodeChef, but was making his first appearance atop the table. And as always we were happy and excited to have a new name among the leaders. So, make sure you all give us such opportunities a little too often.
As of now, let us have a look at who stood where in the rank tables.
Starting with the Global top ten:
Now, the Indian top five:
The final stats for the contest were as follows.
The numbers do not reflect the true story of the contest. But with a grueling problem set, the pressure of doing well at the fast approaching ACM ICPC, and the immense competition pouring in from peers all over the globe, the contest certainly did satisfiy the competitive buds of the participants.
Whether you successfully cracked all the problems in the given duration of the contest, or had a tough time getting an AC, we would want you to go through the comprehensive editorials for all the problems to help understand the best possible approach towards solving them all. This will strengthen your ACM ICPC preparations, and will certainly help you do well during the contest.
If for some reason, you have missed the September Cook-Off, do not get disheartened. We still have our mega warm up round in October Cook-Off 2013. Top 75 Indian participants from our mega warm up round will get their ACM-ICPC expenses reimbursed, you can find all the details here.
We hope you had fun in the September Cook-Off. If you did, then do share with us your feedback, suggestions, or complaints. We have always loved receiving them, so keep sharing them with us at firstname.lastname@example.org.
See you all at the impending September Lunchtime 2013, gear up to see the young minds in action.
Till next time, adios everybody.
“There’s an easy way of doing that.” This magical sentence can make anyone happy, irrespective of what they are doing at the time it is said. Let’s take you back to the days when finding a problem that required the knowledge of DP, used to require a special skill set. Steps needed were:
It was possible and it was tiresome. Those days are over now. Allow, us to present to you our new “Problem Tags” feature. With this feature you will be able to:
You will also be able to sort the search results on:
Furthermore, on the problem tags page you will be able to filter the results on:
Now, isn’t that cool? We think it is. But, there are certain things you need to know before you start using this feature.
We know, at some point you all have faced trouble reaching to a problem of your choice at one go. But not anymore. Now, go and search for your favourite problems in an easy and seamless manner. If you think, there is something missing from the feature, or something that can make it even more awesome, do write to us at email@example.com.
So, next time you find yourself wondering about a problem on CodeChef, remember, “There’s a “tag” for that?”
Till next time, adios everybody.
See you at the contests.
If it wasn’t for the final hour of the September Challenge 2013, the contest would have gone down in our history, without even creating a ripple in our memories. Just like all of you, we too were enjoying the final few hours of the contest, thanking our problem setters, Kaushik Iska, Roman Furko, Roman Rubanenko, Sergey Nagin, Surya Kiran, Tuan Anh, Vitaliy Herasymiv, and Vivek Hamirwasia, our testers Sergey Kulik and Mahbubul Hasan, and our editorialist Utkarsh Lath, for yet another fulfilling contest. The contest was equally enjoyed by newcomers and seasoned campaigners, which is always a pleasing sight.
The September Challenge 2013 ran its course rather smoothly, with submissions flowing calmly on all the problems. The smooth course of contest was a tad harder for the users trying their hands on Two Roads, but still some of the many who tried, got AC. While Two Roads was proving a tough nut to crack, problems like Chef and Integers, made life a little easier for the participants. The participation and the enthusiasm of the contest was smooth all through the contest duration, however, the final hour of the contest saw heaps of action.
Just like a pre-written script of an action movie, the final hour of the challenge brought the biggest fight. After the calm nine days, the race to the top among the big three got fierce and we started seeing frequent name change atop the rank tables in the final stages of the contest. After holding the top spot for, probably the longest time in the contest, kutengine, was replaced by the ever dominant ACRush. But, just when a lot of us had considered the fate of the contest sealed, the new rising star from North Korea, kgcstar came out of nowhere and swept the contest away. Before we could understand what had just happened, the ranking charts changed and changed for the last time in the contest. The September Challenge 2013 was over and we had our winners. And now, let us introduce them to you.
Let us first put our hands together for the Global top ten:
And now, let’s give a big round of applause to our Indian geniuses.
After the big guns, it’s now time to acknowledge our little masterminds. So, give it up for the top five school students:
Let’s start with the geniuses overseas:
And, now our Indian kids;
Now, a special mention to the special achievers, who got highest scores for challenge problems except for out winners.
First, the top three global:
And now, the Indian top three:
The participation for this contest was a tad on a lower side in comparison to the last contest, but still the numbers were satisfactory and we were pleased to have all of you. Now, let us present to you the stats for the contest.
All those numbers and names made the September Challenge a fun filled learning experience for everyone who participated in it. And we hope you have taken a lot of learning and fun out of the contest.
Now, as we move towards our September Cook-Off 2013, we would like you all to pull up your socks, as it is the first of the two ACM ICPC warm ups CodeChef will be hosting this year. Oh yes! the ACM ICPC India regionals is fast approaching and we want you all to be at the top of your game, to secure a slot for the world finals.
So, do not forget to mark your calendars for the first ACM ICPC warm up, the September Cook-off, taking place on 22nd September, 2013. Hope to see you all going all out in the contest.
If you have any doubts, queries, or suggestions, feel free to write them to us at firstname.lastname@example.org.
Till next time, goodbye everybody.
See you at the contests.
Four hundred students are gathered in the school auditorium. I go up on stage to speak to them and try to explain what programming is. “How many of you know what programming is?”, I ask, with a lot of hope that at least I will see a hundred hands in the air – I just see twenty. It surprises me. This is a school in India and is a reputed one, very few have a clue about what programming is. The scene reminds me of the code.org video where no student says that he or she wants to be a programmer when they grow up. But, I see a lot of talent here. Later, into the talk I pose questions like the Seven Bridges of Konisberg, a popular problem in Computer Science taught to undergraduate students in university, quite a few of them are able to comprehend the solution and some are able to reason out the correctness of it as well. I think, “Well, there’s a lot of talent that is not being realized in schools in India, and programming can be a huge key to teaching kids a thought process”. With loads of eyes looking at me with a certain spark, I end my jargon speak asking “So, how many of you are now interested in programming?” and ninety percent of the crowd raises its hands – success!
It can get really taxing to introduce a new topic to a crowd that has never even heard of it. As one becomes more specialized in a field, it becomes even harder to generalize your topic of interest and explain it to a junta which is younger yet extremely interested and enthusiastic. My experiences with introducing programming to school students in two different schools were quite similar. I realized the challenges behind explaining something new to a crowd that was still starting off their explorations in the world of math and computer science. Hence, I outline here my experience with the entire ordeal along with a few points of advice that might help any volunteer on the way.
I was interested in sharing my programming experience with schools as I felt I missed out on knowing about a competition like IOI while I was at school. I felt that programming is a wonderful skill that teaches one how to think in an organized way and would really grab the attention of students still studying in school. Hence, I went up to the principal of my Alma Mater, Mr. Gautam Gupta from the Aditya Birla Public School and he allowed me to give regular lectures to the students of classes X-XII. I found out that CodeChef was also working on a similar idea and I asked them if they would like to collaborate. Hence, I signed up for being a volunteer with them.
I took two introductory sessions at two different schools – The Aditya Birla Public School, Renusagar and The Delhi Public School, Vidhyanagar. I hail from a place called Renusagar in Uttar Pradesh. Major challenges in this area are availability of a stable internet connection and the remote location which makes it hard for people to know about new happenings in the outside world. But, the principals of both schools were really receptive.
Both schools have CBSE as the board at the secondary and senior secondary levels. In fact, Dr. Janardan Pandey, principal, DPS, Vidhyanagar asked me about the differences between Python and C++ knowing that CBSE is planning to make a shift to Python for the computer science syllabus for classes XI and XII. He clearly realizes the importance of programming as being the next big thing and in fact, was really happy to see posters for LunchTime that I handed over to him. The posters were immediately scanned and emailed to all parents on the same day making it possible for parents to understand as well. I had a wonderful experience interacting with him.
At the Aditya Birla Public School, Renusagar, which is my Alma Mater, the principal, Mr. Gautam Gupta agreed to let me take regular mentoring sessions after selecting students from an interaction session that I took. The students have been quite regular and enthusiastic about these sessions that take place on the Saturday every week.
I will describe my experience with DPS, Vidhyanagar here, as the session at the ABPS, Renusagar was quite similar. The session was held in the school auditorium and was jam packed with students from class 9th to 12th. The crowd was really receptive and enthusiastic about everything that I talked about and it was fun to receive a nice round of questions in the end. The presentation began with the principal giving my introduction. Later, I stepped up on stage and introduced myself as well – telling the students my name, my school and my college.
Next, I asked the students if they knew what programming was, if they had prior experience with a programming language and if they loved mathematics. The response wasn’t huge in this aspect as most students actually didn’t know what programming was. I told them that programming is a way to instruct a computer to carry out certain tasks and gave examples how programming can be used by a biologist (to predict the epidemic of swine flu) or by musicians to compose music as well. I played the 1-min long video from code.org for the students and asked them to identify each person featuring on the video. It was a pleasure to see so many students laughing and getting excited when I asked them if they knew who Mark Zuckerberg or Bill Gates was. I also talked to the students about the movies, The Terminator and The Matrix, since students find it easy to relate concepts to these movies as almost all of the crowd had seen these movies and found them fascinating.
I told them about International Informatics in Olympiad (IOI) and how nobody has won a Gold Medal at it and about CodeChef promising to reward cash prizes to anyone who achieves the feat first from the country. I also told them about the posters for LunchTime that would soon be posted on their school notice boards. I told them about the Zonal Informatics Olympiad (ZIO) /Indian Computing Olympiad (ICO) and the camp as well and the nearest center for writing the examination.
It might seem impossible in the beginning to introduce things like graphs or binary search in the first session itself. But, I realized that examples of these ideas serve as good appetizers for students to get interested and they might want to start reading them up by themselves. One need not introduce data structures and any programming language in particular to give a taste of these topics. It was risky to do so and I did succeed in both the schools with two problems that I gave to the students – they understood and took them really well.
The first problem that I introduced was the following :
“Given a stack of coins, you can take out 1 coin or 2 coins from the stack at each turn that you are given. In how many ways, can a person empty the stack given a way is a distinct sequence of the number of coins remaining at each step till the stack goes empty”.
I went on to explaining Fibonacci numbers to the students, showing them what a tree looked like and how it can be used to count the number of ways. It always helps to give some hints at each step and let them figure it out. I took a small number for the number of coins in the stack (5) and asked them to solve for the same. Once some students shouted out “8”, I drew the tree and explained the solution to everyone else.
It was even more fun discussing the seven bridges of Konisberg and why an Euler walk can’t exist on a certain graph that I drew on the board. I didn’t specify the exact term “graphs” to them but rather preferred talking in terms of cities and roads or circles and lines. It became easier for the students once I took the names of neighbouring cities in this area. I allowed students to figure out an Euler walk for a graph that didn’t have one (all vertices with an odd degree) and it was nice to see students walking away with a smile realizing why their solution was wrong. Ultimately, when I announced that a solution didn’t exist, and on asking why so, one of the students pointed out that each circle (vertex) had an odd number of lines (edges) associated with it.
The session ended with a round of questions from the students and a vote of thanks from the principal. It was amazing to see such enthusiasm from students and on asking in the end, how many of the students were now interested in programming and learning more about it, about 90 percent of the crowd raised their hands – that was really overwhelming for me.
Embedded are a few pictures and a video of the presentation. Hope you find the concept of CodeChef for Schools really interesting!
I can be contacted at +91-9670623389 on weekdays till the end of September as I am joining Google, Mountain View in October and will be moving to USA. The CodeChef for Schools team is available at +91-2230797709 on weekdays from 9 AM to 6 PM.
Link for the video : CodeChef for Schools at Delhi Public School, Vidhyanagar