All posts filed under “blog

comment 0

Indian 500 cities Data Exploration

Dataset Info Arijit Mukherjee created this dataset merging the census 2011 of Indian Cities with Population more than 1 Lac and City wise number of Graduates from the Census 2011, to create a visualization of where the future cities of India stand today. I collected it from Kaggle and tried some data visualization technique to explore Indian 500 cities. Attributes Info ‘name_of_city’ : Name of the City ‘state_code’ : State Code of the City ‘state_name’ : State Name of the City ‘dist_code’ : District Code where the city belongs ( 99 means multiple district ) ‘population_total’ : Total Population ‘population_male’ : Male…

comment 0

learn to code for efficient CS degree

learning how to program is good for CS people. the knowledge/logic what we learn/develop while taking Basic C course, it will extend in several courses. the fundamental logic development of writing program/code is a must but many of us care a little. as huge students join into CS program without any prior plan, many couldn’t keep pace with the whole academic process. if you miss the very basic programming course, you’re going to miss everything. yes, everything. in my view, it’s a loop. if you learn C, you will easily get into C++, Java, OOP courses. then, Data Structure and…

comment 0

CS study in Bangladesh

Computer science is the study of problems, problem-solving and the solutions that come out of the problem-solving process. The whole process follows an algorithm which is a step by solution to the specific problem. Yeah, computer science is a beauty! I love it. In my sense, computer science education should lead its students to a very logical, rational n perceptive life. Isn’t is usual? But pathetic thing is – it’s not like that around me/us (almost). Still lots of us don’t know what we’re reading/doing, why reading/doing so (don’t want to know/care!). The philosophy isn’t followed or practiced – the…

comment 0

স্ট্যান্ডার্ড টেমপ্লেট লাইব্রেরী – ম্যাপ

এই মুহুর্তে আমরা একটা সাইটে ইউজার একাউন্ট রেজিস্টার সিস্টেম নিয়ে কাজ করতে চাচ্ছি। সিস্টেমের বেসিক কাজটা খুবই সোজা। প্রত্যেকবার একজন ইউজার রেজিস্টার করতে চাইলে, আমরা সিস্টেম ডাটাবেজ চেক করে দেখবো এ নামে কোন ইউজার আছে কিনা। যদি না থাকে, তাহলে ওই ইউজার রেজিস্টার হবেন এবং আমরা OK মেসেজ শো করবো। যদি নামটি আগেই আমাদের ডাটাবেজে থাকে, মানে এই নামে আগেই কেউ একজন রেজিস্টার করে ফেলেন সেক্ষেত্রে নতুন নামের ফরম্যাট হবে এরকম- ইন্টিজার ভেল্যু (1, 2, 3… ) ওই নামের শেষে যোগ হবে এবং ইউজারকে এই নামে রেজিস্ট্রেশন করার জন্য রিকমেন্ডেশন পাঠাবো। ধরা যাক, karim রেজিস্টেশন রিকেউয়েস্ট পাঠিয়েছে, এখন করিম নামে…

comments 5

Quora – বর্তমান সময়ের সেরা প্রশ্ন-উত্তর সাইট

আমি যখন কম্পিউটার প্রোগ্রামিং নিয়ে পড়াশুনা শুরু করি বিশেষ করে কম্পিটিটিভ প্রোগ্রামিং নিয়ে কাজ করার সময় নানা প্রশ্নের উত্তর গুগলে সার্চ করতে হত। এখনো প্রতিদিন গুগল করতে হয়। তো গুগল করার সময় আমি মাঝে মাঝেই Quora সাইটের লিঙ্ক পেতাম। সেসব আর্টিকেলগুলো পড়ে আমার বেশ ভালো লেগেছিলো। সেই থেকেই আমার নিয়মিত Quora ব্যবহার শুরু। Quora আমার জন্য একটা গাইড, আমার সাইকোলজিক্যাল মেন্টর, মাই ইনটেকচুয়াল গ্যামিং সাইট। Quora পড়ে আমি শুরু থেকেই প্রচুর মজা পেয়েছি। এখানে যারা উত্তর লিখেন, আলাপ আলোচনা করেন – এদের বর্ণনার যে ধরণ সেটি আমাকে প্রতিদিন মুগ্ধ করে। আমার কখনো Quora কে মনে হয়েছে ফেসবুক, কখনো গুগল, কখনো ইয়াহু। Quora একাই সবকিছু!

comment 0

এসিএম আইসিপিসি ২০১৬

বিশ্বের সবচেয়ে মর্যাদাপূর্ণ প্রোগ্রামিং প্রতিযোগিতা এসিএম আইসিপিসির চূড়ান্ত পর্বের মূল প্রতিযোগিতা আজ অনুষ্ঠিত হলো। এবারের আয়োজন হয়েছে থাইল্যান্ডের পুকেট শহরে। এটি ছিলো এসিএম আইসিপির ৪০ তম আসর। আয়োজক বিশ্ববিদ্যালয় থাইল্যান্ডের প্রিন্স অব সংকলা ইউনিভার্সিটি। চূড়ান্ত পর্বের আগে লক্ষ লক্ষ প্রোগ্রামারদের মাঝ থেকে সেরাদের বাছাই করার উদ্দেশ্যে বিশ্বের নানা রিজিওনজুড়ে আয়োজিত হয়েছিল রিজিওনাল প্রোগ্রামিং প্রতিযোগিতা। ১০২ টি দেশের মোট ২৭৩৬ বিশ্ববিদ্যালয়ের প্রায় ৪০০০০ প্রতিযোগী রিজিওনাল প্রতিযোগিতায় অংশগ্রহণ করেছিল। সেখান থেকে বাছাই প্রতিযোগিতার ধাপ পার হয়ে বিভিন্ন দেশের মোট ১২৮ টি দল ওয়ার্ল্ড ফাইনাল ২০১৬ মানে চূড়ান্ত পর্বে লড়াই করার জন্য যোগ্যতা অর্জন করে। বাংলাদেশ ঢাকা রিজিওনের অন্তর্ভুক্ত এবং এই রিজিওন থেকে এবছর ০৩ টি দল ওয়ার্ল্ড ফাইনালে যাওয়ার যোগ্যতা অর্জন করে। এবারের আইসিপি নিয়ে বাংলাদেশে উচ্ছ্বাস আর উদ্দীপনা ছিলো অন্যমাত্রায়।

comments 2

কম্পিটিটিভ প্রোগ্রামিং টিউটোরিয়াল লিঙ্কবাকসো

প্রোগ্রামিং সিলেবাস

ইন্সপায়ারিং অর স্ট্রাটেজিক

ডাটা স্ট্রাকচার

  • স্ট্যাক ডাটা স্ট্রাকচারhttps://goo.gl/YHKFZo (কন্টেস্ট প্রোগ্রামার তানভির হাসানের লেখা । অসাধারণ ।)
  • কিউ ডাটা স্ট্রাকচারhttps://goo.gl/DLT4gu (তানভির হাসানের লেখা ।)
  • লিঙ্কড লিস্ট ডাটা স্ট্রাকচার – https://goo.gl/apWYAt (তানভির হাসানের লেখা ।)
  • সেগমেন্ট ট্রি-১ – http://goo.gl/dTKLFk (শাফায়েত ভাইয়ের লেখা । শাফায়েত ভাই হিউজ পপুলার ব্লগ রাইটার ফ্রম বাংলাদেশ)

ডাইনামিক প্রোগ্রামিং

  • প্রিলিমিনারি ডাইনামিক প্রোগ্রামিং  http://goo.gl/lqtS9n  ( চাইনিজ ভাষায় লেখা । গুগল ক্রোম ব্যবহার করে ট্রান্সলেট করে নিতে হবে।)
  • How to come up with solutions for DP problems – https://goo.gl/Yv5JkS (Anwser from Quora by Michal Danilák)
  • Dynamic Programming Youtube Tutorial – https://goo.gl/QiurTN ( Youtuber speaks in Arabian. But english subtitles available. Awesome Links has been added with video. So check it out.)
  • How can I effectively practice Dynamic Programming to improve my skills – https://goo.gl/0VKz91
  • Awesome Youtube Video Tutorial by Tushar Royhttps://goo.gl/DrwFz7
  • Dynamic Programming (starting approach) – https://goo.gl/CzjGkO

নাম্বার থিওরী

  • এক্সটেন্ডেড ইউক্লিডীয়ান এলগোরিদম – http://goo.gl/lxvhmy (জুবায়ের হাসান লিখেছেন)
  • Chinese Remainder Theorem – http://goo.gl/ayvTkh (আবু আসিফের লেখা ।)
  • ম্যাট্রিক্স এক্সপোনেনসিয়েশন – http://goo.gl/4rTMh9 (ঢাবি শিক্ষক আনা ফারিয়া লিখেছেন।)
  • Practice Recursions – http://goo.gl/1m1l9b
  • Segmented Sieve of Eratosthenes – http://goo.gl/vdwd0o
  • Segmented Sieve – http://goo.gl/e4c1tS
  • ইনভার্স মড – https://goo.gl/WkUN6N
  • ইউলার ফাই ফাংশন – http://goo.gl/c9nct5
  • ন্যূনতম সংখ্যাতত্ত্ব – http://goo.gl/pznOJV
  • Pollard Rho Brent Integer Factorization – https://goo.gl/VQUkYu
  • Miller Rabin Primality Testhttps://goo.gl/xlbiay
  • পূর্ণ সংখ্যার প্রাইম ফ্যাক্টরাইজেশন – http://goo.gl/YBqDcO
  • প্রাইমারিলিটি টেস্টিং (সিভ অব এরাটস্থেনিজ) – http://goo.gl/DNH82v

কোড লাইব্রেরী

  • কন্টেস্ট কোড লাইব্রেরীhttps://goo.gl/dJ6Hpo ( জুবায়ের হাসানের কন্টেস্ট রিপো, মিলিওন ডলার দামি )
  • স্ট্যান্ডার্ড টেম্প্লেট লাইব্রেরী – https://goo.gl/7QJlCH ( ফাহিম ভাইয়ের লেখা, অবশ্য পাঠ্য)
  • গিট পরিচিতি – http://goo.gl/q31tqJ  (জনপ্রিয় প্রোগ্রামার হাসিন হায়দায়ের লেখা)
  • Lightweight Set of Boolean ওরফে Bitmaskhttp://goo.gl/1zDZpm (রুয়েট শিক্ষার্থী আবু আসিফের লেখা ।)
comments 2

সিনট্যাক্স টু কম্পিটিটিভ প্রোগ্রামিং জার্নি

কম্পিউটার সায়েন্সের শিক্ষার্থীদের এক দুটো সেমিস্টার যাওয়ার পর খুবই কমন একটি প্রশ্ন হলো, আমি সি ল্যাঙ্গুয়েজ পারি অথবা আমি পাইথন পারি – এখন কি করবো, ভাইয়া ? এই কথাটি শুনে সিনিয়র ভাইটি একটু মৃদু হেসে উত্তর দেন, ১০ বছরেও তো একটা ল্যাঙ্গুয়েজ পুরো শিখতে পারবা না এখনি সব পারো ! আসলে তুমি যেটা পারো সেটা হলো ব্যাসিক সিনট্যাক্স । কিভাবে ইনপুট আউটপুট নিয়ে কাজ করতে হয়, ডাটা টাইপ, ভেরিয়েবল, অপারেটর, কন্ডিশনাল স্টেটমেন্ট – if else, switch, কন্ট্রোল স্টেটমেন্ট – for loop, while loop এসব বেসিক কিছু ব্যাপার শিখে ফেলাটা খুব কঠিন কিছু না । তামিম শাহরিয়রের সুবিনের বই আর টন টন অনলাইন টিউটরিয়ালের ভিড়ে ক্লাস সিক্স অথবা সেভেনের ছেলেপেলেও এখন এসব পারে ।

comment 1

SPOJ Problem ADFRUITS

এই প্রবলেমটি একটি স্ট্রেইট ফরোয়ার্ড Shortest Common Subsequence প্রবলেম । ডিরেক্ট Shortest Common Subsequence Algorithm প্রয়োগ করে কিংবা Longest Common Subsequence কে কিছুটা মডিফিকেশন করে এটি সলভ করা সম্ভব । ডাইনামিক প্রোগ্রামিংয়ের খুবই জনপ্রিয় এবং ক্লাসিক্যাল দুটি এলগরিদম হলো LCS ও SCS Algorithm । LCS বা SCS Algorithm কিভাবে কাজ করে তুমি যদি না জেনে থাকো তাহলে নিচের লিঙ্ক থেকে শিখে নিতে পার । খুব সহজ ভাষায় LCS হলো দুটি স্ট্রিংয়ের মধ্যে সবচে longest subsequece টি. দুটি স্ট্রিংয়ের lcs একটির বেশীও হতে পারে । যেমন – eye, eyes স্ট্রিং দুটির longest subsequence হলো eye. উইকিতে Shortest Common Subsequence এর বর্ণনা করা হয়েছে এভাবে – a shortest common supersequence of strings x and y is a shortest string z such that both x and y are subsequences of z. যেমন – স্ট্রিং ananas ও banana এর SCS হলো bananas।