Skip to main content

কম্পিটিটিভ প্রোগ্রামিং এ হাতেখড়ি


কম্পিটিটিভ প্রোগ্রামিং এ হাতেখড়ি
আপনি কম্পিটিটিভ প্রোগ্রামিং শব্দটা যদি আজকেই প্রথম শোনেন তবে নিচে আমার দেওয়া টার্গেটগুলো স্টেপ বাই স্টেপ কমপ্লিট করলে আশা করি কম্পিটিটিভ প্রোগ্রামিং এ হাতেখড়ি হয়ে যাবে। প্রথমে সি/সি++/জাভা (আমি বাকি ল্যাংগুয়েজ রিকমান্ড করিনা) একটা শিখে ফেলুন।নিচের দেওয়া টার্গেট কমপ্লিট করুন।
Target 1:
Basic Syntax
Input-output
conditional logic
loops
array
string
functions
some টুকটাক জিনিসপত্র
রেফারেন্স বুকঃ সুবিন ভাই এর বই (প্রথম খন্ড)
Target 2:
Dimik OJ থেকে ১০-১২ টা প্রব্লেম সল্ভ করবেন
কোড মার্শালে যে কয়টা সম্ভব সব সল্ভ করবেন
URI তে 100/120 টা সমস্যা সমাধান করবেন
Multidimensional Array(2D/3D) নিয়ে পড়াশোনা করবেন
LightOj তে গিয়ে প্র্যাক্টিস স্টার্ট করে দিবেন
ম্যাথ,পাজল সল্ভ করবেন রেগুলার
Target 3:
এ পর্যায়ে নিচের বইগুলো পড়বেন
The Art and craft of problem solving
কম্বিনেটরিক্সের হাতেখড়ি
গনিত অলিম্পিয়াডের স্বপ্নযাত্রা।
Ming's combinatorics book
Olympiad Combinatorics
Concrete Abstract Algebra
Number Theory
Math Topic To Cover: Number theory, Combinatory, Basic geometry, Puzzle solving, Mathematical problem solving
Target 4:
সি++ শুরু করে দিন
Teach Yourself C++ পড়ুন ( ক্লাস/স্ট্রাকচার লাগবেনা)
•STL (Standard Template Library) এর ব্যবহার শিখুন
নিচের টপিকগুলো নিয়ে পড়াশোনা করুন-
Vector           String     Set
Queue           Stack    List
Pair              Deque  priority_queue
Target 5:
কোডফোর্সেস এ ডিভিশন 2/3 এর A,B সল্ভ করুন
Atcoder এর ডিভিশন ২ এর A/B/C
Codeforces এ ৫০ টা A এবং ১০০ টা B সল্ভ করুন
সুবিন ভাই এর কম্পিউটার প্রোগ্রামিং পার্ট ২
শাফায়েতের ব্লগ
নিচের বইগুলো
Programming Contest - Data Structure And Algorithm
Graph Algorithm
CP-Handbook

নিচের OJ গুলোতে নিয়মিত প্রব্লেম সল্ভ করতে হবে এবং
চেষ্টা করবেন যেন কমফোর্ট জোনের বাইরে গিয়ে প্রব্ললেম সল্ভ করতে
পারেন
Uva
Lightoj
codeforces
Toph
Hackerrank
Hackerearth
atcoder
spoj
codechef

রেফারেন্সঃ Tasmeem Reza

Comments

Popular posts from this blog

Breaking The Summation Formula (Part 1)

 Q. f ( n ) =  - 1 + 2 - 3 + .. + ( - 1) n n .  Given n, find out f(n) Approach(1)- Bruteforce: 1. Calculation sum=n*(n+1)/2 2. loop[i=1,i=n : i+=2] odd+=i 3.ans=sum-2*odd Code: #include < bits / stdc ++. h > using namespace std ; int main (){   long long x ; cin >> x ; long long p =( x *( x + 1 ))/ 2 ; long long bad = 0 ; for ( long long i = 1 ; i <= x ; i += 2 ) bad += i ; cout << p - 2 * bad << endl ; } Approach(2)-Greedy: Basic: s=1+2+3+4+....+n Formula: sum=n*(n+1)/2= (n/2) + (n+1).2 ...

Game Theory with examples

Game Theory with examples Introduction In this article I will be covering problems related to two players game in which it is assumed that both players play optimally and we have to find out the winner of the game. First we will look at the  basic   division of positions to winning and losing . Then we will see the  Game of Nim  and then see how it will be used to solve the  Composite games . Basic Division of positions to winning and losing Problem Statement:  Consider a simple game played by two players A and B . There are n stones on the table. Each player can pick 1 , 2 or 5 stones in each turn. Both players pick the stones alternately until the total number of stones left on the table is 0. The player unable to make the move will lose. Assuming that both the players play optimally, output the winner of the game. Solution:  As you can see positions 1 , 2 and 5 are winning positions since the player can pick up all the stones and other player will n...

Big O Notation — Time & Space Complexity in Ruby!

  Big O Cheat Sheet In this post, we will look at the Big O Notation both time and space complexity! For all our examples we will be using Ruby. What is Big O Notation? Big O notation is just a fancy way of describing how your code’s performance depends on the amount of data its processing. It allows us to calculate the worst possible runtime of an algorithm, or how long it takes the algorithm to complete. In other words, it informs us of how much it will slow down based on the input size. It’s usually talked about in two ways the  time complexity ( how long an algorithm takes )and  space complexity ( how much space an algorithm uses ) Let me put this graph here we can refer to it as we go on, it’s a graph showing the complexities compare against each other. Big O complexity chart Time Complexity Before we get try wrapping our heads around the different big O notations here is a nice table that I am borrowing to show how speed will slow down based on the size of the datas...