Codechef Report
Codechef Report
BELAGAVI
2021 – 2022
ACKNOWLEDGEMENT
Also, I thank all the teaching and non-teaching staff of Department Artificial
Intelligence and Machine Learning for the help rendered.
I. INTRODUCTION
CodeChef also partners with schools, colleges, and student groups to create
local CodeChef Chapters, meet-ups, orientation sessions & programming
workshops. In addition, CodeChef sponsors coding contests and teams of Indian
programmers as part of its Go for Gold Initiative for ICPC & IOI.
COMPUTER LANGUAGES:
Whatever the approach to development may be, the final program must
satisfy some fundamental properties. The following properties are among the
most important:
Reliability: how often the results of a program are correct. This depends
on conceptual correctness of algorithms and minimization of
programming mistakes, such as mistakes in resource management (e.g.,
buffer overflows and race conditions) and logic errors (such as division
by zero or off-by-one errors).
Usability: the ergonomics of a program: the ease with which a person can
use the program for its intended purpose or in some cases even
unanticipated purposes. Such issues can make or break its success even
regardless of other issues. This involves a wide range of textual,
graphical, and sometimes hardware elements that improve the clarity,
intuitiveness, cohesiveness and completeness of a program's user
interface.
PROGRAMMING LANGUAGES:
The details look different in different languages, but a few basic instructions
appear in just about every language:
Input: Gather data from the keyboard, a file, or some other device.
Output: Display data on the screen or send data to a file or other device.
Arithmetic: Perform basic arithmetical operations like addition and
multiplication.
Conditional Execution: Check for certain conditions and execute the
appropriate sequence of statements.
Repetition: Perform some action repeatedly, usually with some variation.
Many computer languages provide a mechanism to call functions provided by
shared libraries. Provided the functions in a library follow the appropriate run-
time conventions (e.g., method of passing arguments), then these functions may
be written in any other language.
II. COMPETITIVE PROGRAMMING
Programming is a challenging role and once you enter this field you will
encounter new challenges and you may have to solve some problems which no
one has solved before or their solution doesn’t exist anywhere. At that time, you
are expected to come up with a solution in the least possible time using your
problem-solving and logical ability. So, the one and clear goal behind these
competitive programming is “To prepare a programmer such that his/her logical
ability increases and he/she is able to write code for the challenging situation.”
Another reason is that a lot of big companies like Google, Facebook.
Microsoft, Amazon hires through competitive programming so if you want to
get into these companies then you really need to get your hands dirty in
competitive programming. It doesn’t matter you are a newbie programmer or
you have written some code before, we will tell you some steps, approaches,
and tips to prepare yourself for competitive programming. Let’s discuss that in
detail.
4. Take the Challenge and Solve Coding Problems: You have learned a
programming language, you have learned time and space complexity and you
have also covered the fundamentals of DSA, now it’s time to take the knife in
your hand and kill the lion in the jungle. Yes…you need to take part in coding
challenges on different coding platforms. Before participating in contest, it
would be great if you practice for some challenges on your own and then
participate there. If you are looking for the resources of these coding platforms
so a lot of sites are there like Geeksforgeeks, Codeforces, Codechef, Topcoder,
SPOJ.