২৮ অক্টোবর ২০১৫

Almost Prime Number's

                                       == Almost Prime Number ==

Almost Prime Number হচ্ছে সেই সকল প্রাইম নাম্বার যাদের প্রাইম ফেক্টোরিজেশন কেবলেই একটা প্রাইম নাম্বার ।
যেমনঃ
              ১-১০ পর্যন্ত Almost Prime Number ৩ টি ।
                ৪=২*২ ; ৮=২*২*২ ; ৯=৩*৩ ;
এখানে ৪,৮,৯ প্রতিটি সংখ্যার প্রাইম ফেক্টোরিজেশন কেবল একটা সংখ্যা । ৪ ও ৮ এর ক্ষেত্রে ২ এবং ৯ এর ক্ষেত্রে ৩ ।
আবার ১১-২০ পর্যন্ত Almost Prime Number ১ টি । তা হল ১৬=২*২*২*২ ; 
কিন্তু লক্ষ্য করুন, Almost Prime Number গুলুর একটি সংখ্যাও প্রাইম নাম্বার নয় । তো, সে ক্ষেত্রে আপনি যদি প্রতিটি প্রাইম নাম্বারের ২ থেকে ইনফিনিটি সংখ্যক পাওয়ারের কথা চিন্তা করেন দেখবেন আপনি আপনার Almost Prime Number গুলু পেয়ে গেছেন ।


১১ ১৩ ১৭ ১৯
ধরুন, আমার কাছে ১-২০ পর্যন্ত এই প্রাইম নাম্বার গুলু আছে ।এখন আমি প্রতিটি প্রাইমের যদি পাওয়ারের কথা চিন্তা করি (পাওয়ার > ১ ) ২০ এর আগ পর্যন্ত তাহলে কি আসে একবার দেখা যাকঃ
২ এর ক্ষেত্রে আমরা পাব - ৪(২*২); ৮(২*২*২); ১৬(২*২*২*২); ৩২(২*২*২*২*২) > ২০ 
৩ এর ক্ষেত্রে আমরা পাব - ৯(৩*৩) ; ২৭(৩*৩*৩) > ২০ 
৫ এর ক্ষেত্রে আমরা পাব - ২৫(৫*৫) > ২০... ... 
তো, ১-২০ পর্যন্ত আমরা Almost Prime পাব ( ৪,৮,৯ ও ১৬ ) মোট ৪ টি । 

এবার একটু নিচের কোডটি দেখা যাকঃ 


for(i=0;i<MX;i++)
    {
        if(!flag[i])
        {
            //for(j=p[i]*p[i];j<MX;j*=p[i]) almost.pb(j);

            for(j=i*i;j<1000000000005;j*=i)  // **** Take Care about that range ! i have got so much WA for that..
            {
                almost.pb(j);
            }
        }
    }
Where MX=1000005;  flag[0]=flag[1]=true;

আমরা আসলে পাওয়ারের কথা খাতা কলমে চিন্তা করে খুব সহজেই একটা রেইঞ্জের Almost Prime Number গুলু বের করে ফেলতে পারি কিংবা বলতে পারি ওই রেইঞ্জে কতগুলু Almost Prime Number আছে । 
কিন্তু কোডিংয়ে বিষয়টা একটু অন্য ভাবে চিন্তা করতে হবে । কেননা TLE এড়ানোর জন্য আমরা সবসময় ট্রাই করি পাওয়ার নিয়ে কাজ কম করার, তবে তা যদি কেবল ছোট রেইঞ্জের হয় তাহলে ঠিক আছে ... কিন্তু লিমিট টা যদি দশের পরে ১১ বা ১২ টা শূন্যের বোঝা মাথায় চেপে দেওয়া হয় তাহলে অগত্যা এই পাওয়ার নিয়ে আমাদের আর কিছুই করার নেই । 
তাই আমরা উপরের কোডটিতে প্রতিটি প্রাইম নাম্বারের জন্য তাঁর কাঙ্ক্ষিত লিমিট পর্যন্ত কেবল একটা আরেকটার সাথে গুণ করে গেছি এবং স্টোর করেছি ।। 
কোডটা অনেক সোজা, তাই আশা করি কার প্রবলেম হবে না ।।
তো, এভাবেই আমরা কোন প্রবলেম ছাড়াই খুব সহজেই Almost Prime Number গুলু বের করে ফেলতে পারি ।। তবে আবার বলছি ... Almost Prime Number গুলু কিন্তু একটাও Prime Number না । বরং Prime Number গুলু থেকেই এদের উৎপত্তি ।। 
..................... এবার https://uva.onlinejudge.org/external/105/10539.pdf এই প্রবলেম টি আশা করি করে ফেলতে পারবেন ।। 
তারপরও যদি না পারেন এই লিঙ্কে http://psshidhu.blogspot.com/2015/10/uva-10539-almost-prime-numbers.html গিয়ে হেল্প নিতে পারেন ।। তবে কখনও কোড কপি-পেস্ট করবেন না । আগে নিজে ট্রাই করে পরে হেল্প নিবেন ।।
সব শেষে অনেক শুভ কামনা রইল । । । । 
 .................................................................. Happy Coding .....................

১৮ অক্টোবর ২০১৫

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

আমি নাম্বার থিওরি শুরু করি আমাদের অমিত স্যার এর ACM ক্লাসে "Sieve of Eratosthenis" এর মাধ্যমে । পরে এই প্রবলেম নিয়ে বেশ কিছু প্রবলেম সল্ভিং দিয়ে পুরাপুরিভাবে আমি নাম্বার থিওরি যাত্রা শুরু করি ।
ইতিমধ্যে নাম্বার থিওরি এবং প্রাইম রিলেইটেড বেশ কিছু প্রবলেম নিয়ে ঘাটাঘাটি করা হয়েছে ।
তাঁর মধ্যে নাম্বার থিওরি বা প্রাইম (যাই বলুন) কিছু প্রবলেম শেয়ার করছি ...

[এর বাইরে আমি যার সাহায্য নিয়েছিলাম তাঁর লিঙ্কঃ http://lightoj.com/article_show.php?article=1001 ]

[ সব Uva প্রবলেম ]
  
1. Uva 324 - https://uva.onlinejudge.org/external/3/324.pdf
 === নরমাল ফেক্টোরিয়াল প্রবলেম । কিন্তু ১০০! এর কথা মাথায় রাখতে হবে ।।
== সমাধানঃ http://psshidhu.blogspot.com/2015/10/uva-324-factorial-frequencies.html

2. Uva 10948 - https://uva.onlinejudge.org/external/109/10948.pdf
===== একটি আদর্শ নাম্বার থিওরি প্রবলেম বলা যায় । বলে রাখি, Uva তে ম্যাক্সিমাম নাম্বার-থিওরি প্রবলেম TLE পাবার মত অবস্থায় থাকে । তাই সল্ভ করার আগে অবশ্যই সাতপাঁচ ভেবে সল্ভ করা উচিত ।

3. Uva 11417 - https://uva.onlinejudge.org/external/114/11417.pdf
==== খুব নরমাল GCD প্রবলেম ।। সবার করা উচিত ।

4. Uva 10924 - https://uva.onlinejudge.org/external/109/10924.pdf
==== এটাও খুব সোজা । কিন্তু তারপরো দেখে শুনে !!! সাবধানের মার নেই ।

5.  Uva 10533 - https://uva.onlinejudge.org/external/105/10533.pdf
======== হুম ! চরম পেইনময় এক প্রবলেম । আবার পয়েন্ট ২ এর বল্ড করা কথাটা স্মরণ করিয়ে দেই ...

6. Uva 10323 - https://uva.onlinejudge.org/external/103/10323.pdf
==== নরমাল ফেক্টোরিয়াল প্রবলেম। কিন্তু অনেক মডিফিকেশন আছে । তাই কোড করার আগে সাবধানে এবং ভাল করে চিন্তা ভাবনা করে করুন ।

7. Uva 10338 - https://uva.onlinejudge.org/external/103/10338.pdf
====== অনেক মজার একটা প্রবলেম । নিজের কমন সেন্স আর ইন্টারমিডিয়েটের factorial এর অংকগুলুর আইডিয়া কাজে লাগান। [ বলে রাখি এই প্রবলেম টি next_permutation STL ব্যবহার করেও করা যায় । কিন্তু শতভাগ TLE পাবার আশা করেই তবে ট্রাই দিয়েন । কেননা আমি যতদূর জানি next_permutation STL এর টাইম কমপ্লেক্সিটি O(n) । এখন আপনার ১২! এর জন্য কমপ্লেক্সিটি আসবে O(n!) ... আপনার পিসি হয়ত এর ঠিকঠাক আউটপুট দিয়ে দিবে , কিন্তু জাজের পিসি দিবে না । তাই আপনাকে এমন একটা Algorithm তৈরি করতে হবে যা কি না efficient . ]

8. Uva 10394 - https://uva.onlinejudge.org/external/103/10394.pdf
===== এই প্রবলেম টা করতে গিয়ে অনেক মজা পেয়েছি । অনেক ভাল একটা প্রবলেম । তবে যদি অ্যারে দিয়ে করতে চান তাহলে সাইজের প্রতি খেয়াল রাখবেন ।

9. Uva https://uva.onlinejudge.org/external/113/11388.pdf
====== এটা সহজ । যখন দেখবেন তখনেই করে ফেলা উচিত ...

10. Uva https://uva.onlinejudge.org/external/107/10789.pdf
==== একটু চিন্তা মূলক প্রবলেম । প্রাইম আর ক্যারেকটারের মিশেল । তবে সহজ ।

11. Uva https://uva.onlinejudge.org/external/102/10235.pdf
===== এটাও খুব একটা কঠিন না । সিভ জেনারেইট করতে পারলে এটা পারা কোন ব্যাপার না ।

12. Uva https://uva.onlinejudge.org/external/4/406.pdf
=== এক লজিকের প্রবলেম । আর সিভ তো আছেই । তাই প্রবলেম টা খুব কঠিন না ।

13. Uva https://uva.onlinejudge.org/external/4/412.pdf
====== এটা পাই এর প্রবলেম । বিভিন্নভাবে পাই এর ভ্যালু জানারেইট করতে হবে এই যা ...

14. Uva https://uva.onlinejudge.org/external/104/10490.pdf
==== এটা বেশ ভাল নাম্বার থিওরি প্রবলেম । পারফেক্ট নাম্বার খুজে বের করতে হবে । যার সূত্র হচ্ছে 2^p-1 * ( (2^p ) - 1) where p is a prime number.. এখন করার দায়িত্ব আপনার ।

15. Uva https://uva.onlinejudge.org/external/6/623.pdf
==== নরমাল factorial প্রবলেম । তবে ৫০০! বুঝতেই পারছেন । সি++ এর ক্ষেত্রে স্ট্রিং এবং জাভার ক্ষেত্রে বিগইন্টিজার ব্যবহার করতে হবে ।

16. Uva https://uva.onlinejudge.org/external/9/974.pdf
 === আরেকটি খুব ভাল নাম্বার থিওরি প্রবলেম । কাপ্রেকার নাম্বার গুলু খুজে বের করতে হবে । যেমন ৫৫^২ = ৩০২৫ । আবার (৩০ + ২৫) = ৫৫ ।। কিন্তু ১০ বা ১০০০ বা ১০০০০ এর ক্ষেত্রে হবে না । এইভাবে ৪০০০০ নাম্বারের ক্ষেত্রে কাপ্রেকার নাম্বার খুজে বের করতে হবে ।

17. Uva https://uva.onlinejudge.org/external/4/495.pdf
==== ফিবোনাচ্চি নাম্বার খুজে বের করতে হবে । সাইজের কথা উল্লেখ নেই । তাই WA এড়াতে বিগইন্টিজার বা পারলে স্ট্রিং দিয়ে করুন।

18. Uva  900 - https://uva.onlinejudge.org/external/9/900.pdf
==== ফিবোনাচ্চি প্রবলেম । নিজেই করে ফেলুন ।

 [ আসলে, এই ছিল আমার  কিছু কালেকশন আমার আয়ত্তে । এটাই শেষ না তবে নিঃসন্দেহে এটা Uva মোট নাম্বার থিওরি প্রবলেমের খুব বেশি হলে ১% বা ২% । তাই নাম্বার থিওরি নিয়ে আরও বেশি জানতে হলে আরও বেশি বেশি প্রবলেম সল্ভ করার কোন বিকল্প নেই । ]

০৯ অক্টোবর ২০১৫

কিছু ব্লগ

আসলে শুরুতে এত কিছু জানতাম, না । সত্যি কথা বলতে এত কিছু ভেবে প্রোগ্রামিং টা শুরু করি নি । প্রথম প্রথম একটু প্রবলেম হত । কিন্তু তাই বলে কখনও খারাপ লাগে নি । যতই এই জিনিস এর প্রতি সময় দিয়েছি ততই এর প্রতি গভীর দূর্বলতা অনুভব করেছি ।
শুরুতে ব্লগের এত কথা জানতাম না । কিন্তু কিছু গ্রুপের বদৌলতে কিছু প্রোগ্রামিং রিলেইটেড ব্লগ পড়ার সুযোগ হল তখন বুজতে পারলাম এই ব্লগ গুলু সত্যিই খুব ভাল , এবং এও বুজতে পারলাম প্রোগ্রামিং পৃথিবীটা বিশাল , কিন্তু এত বড় বিশালতা কখনও আমার মনে বিরক্তির ছাপ ফেলতে পারে নি এখনো ।

এমন কিছু ব্লগ আছে যে ব্লগ গুলু ছাড়া আমার সত্যিই অ্যাডভান্স লেভেল অসপূর্ণ  ... ... ...
১। শাফায়েতের ব্লগ  http://www.shafaetsplanet.com/planetcoding/
২। ফারসানের ব্লগ  http://potasiyam.com/farsan/
৩। smilitude   https://sites.google.com/site/smilitude/
৪। আলাভোলার বাংলা প্রোগ্রামিং ব্লগ  http://ami-alavola.rhcloud.com/
৫ । নূন্যতম সংখ্যাতত্তঃ  http://www.progkriya.org/gyan/basic-number-theory.html
৬ । সেগমেন্টেড সিভঃ Segmented Seieve
৭। কেন প্রোগ্রামিং কন্টেস্ট?
*** শিখরের ব্লগ https://shikhorroy.wordpress.com/
*** Shakil Ahmed (AUST) :-  Shakil Vaiya's Blog
***** Coders Calender for Android users coder calender

০৮ অক্টোবর ২০১৫

দারুন

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

—– তামিম শাহরিয়ার সুবিন ।

বাস্তবতা

সাম্প্রতিক বছরগুলোতে বাংলাদেশে সিএসইতে পড়তে ইচ্ছুক ছাত্রদের সংখ্যা তুলনামূলকভাবে বেড়ে গেছে। এর প্রধান কারণ সম্ভবত বৈশ্বিক চাকরির বাজারে সিএসইর ছাত্রদের ভাল দাপট থাকাটা। আমাদের দেশে মোটামুটি সব পাবলিক ও প্রাইভেট বিশ্ববিদ্যালয়েই সিএসই সাবজেক্টটা পড়ানো হয়। এর ফলে সিএসইতে পড়তে পারা ছাত্রের সংখ্যা যেমন বেড়ে গেছে ঠিক তেমনি বাড়ছে উদ্বেগ। প্রাথমিক উদ্বেগটা হল ভার্সিটি বাছাই নিয়ে। সবারই এক প্রশ্ন, কোথায় পড়ব সিএসই? আর পরের উদ্বেগটা হল মান নিয়ে। আজ এগুলো নিয়েই কিছু কথা বলব ইনশাআল্লাহ। কিন্তু এর আগে একটা ডিসক্লেইমার দেয়া ভাল। আমার এই লেখাটা একান্তই আমার ব্যক্তিগত পর্যবেক্ষণের ফলাফল, সিএসইতে ভর্তিচ্ছুক আমার জুনিয়র ভাই-ব্রাদারদের জন্য। আমি যেমন একটা পাবলিক ভার্সিটিতে সিএসইতে পড়ছি ঠিক তেমনি জব মার্কেটেও আমার অল্প-বিস্তর পদচারণা রয়েছে। আর সেই লব্ধ অভিজ্ঞতা থেকেই আমি আমার লেখার মাল-মশলা যোগাড় করেছি।
ভাল ভার্সিটি বনাম ছাত্রের পরিশ্রমঃ
প্রথমেই আমরা দেখব সিএসইতে পড়ার জন্য কোনটা আসলে বেশি দরকার – ভাল ভার্সিটি নাকি ভাল ছাত্র। যদি সিএসইকে আত্মীকরণ না করে উত্তরটা দিতে হয় তবে পাল্টা একটা প্রশ্ন ছুড়ে দেয়া যায়। প্রশ্নটা হল – ভার্সিটি আসলে একজন মানুষকে কি শেখায়? উত্তরটা হল – চিন্তা করতে। হ্যাঁ, তুমি ঠিকই পড়েছ। ভার্সিটি কোন মানুষকে কাজ করতে শেখায় না, শেখায় শুধু চিন্তা করতে। আসলে এই চিন্তা করাটাই আসল। নতুন নতুন আইডিয়া না আসলে সেটা ইমপ্লেমেনটেশনের জন্য কাজ করার প্রশ্নই ওঠে না। তবে একজন ছাত্রের কাছে ভার্সিটি হল পড়া মুখস্থ করার জায়গা না, তার ক্যারিয়ার গঠনের জায়গা। ভার্সিটিতে বসে একজন ছাত্র যদি পড়া মুখস্থের দিকে বেশি গুরুত্ব দেয় তবে তার কপালে যে ভয়াবহ দুর্গতি আছে তা আর বলতে। কারণ বিপদের দিনে মুখস্থ বিদ্যা সঙ্গ দেয় না! এজন্যই প্রফেসরদের একটা কথা কান ঝালাপালা করে দিতে পারে – বুঝে পড়। তাই তোমাকে নিজ দায়িত্বে বুঝে বুঝে পড়তে হবে, কাজ করতে হবে। যাহোক, আর তর্কে না গিয়ে জেনে নেব আরো কিছু।
সিজিপিএ না দক্ষতা?
তুমি যদি বিডিজবস বা প্রথম-আলো-জবসের মত বড়বড় কয়েকটা জব মার্কেট ঘাটো তবে তুমি দেখবে ৯৫% এরও বেশি কোম্পানি কোন স্ট্রং এডুকেশন ব্যাকগ্রাউন্ড চায় না সিজিপিএ তো দূরের কথা। তারা চায় দক্ষ লোক। একটা হিসাব করা যাক, মনে কর কোন কোম্পানি বুয়েটের এই বছরের ফার্স্ট বয়কে চাকরিতে এপয়েন্ট করল কিন্তু কাজ করার সময় দেখা গেল সে কাজের বেলায় অষ্টরম্ভা। তোমার কি মনে হয়? ঐ কোম্পানি তাকে কাজে রাখবে? কক্ষণোই না, মনে রাখবে কোন কোম্পানি কখনোই লস দিতে চায় না, লস দেয় না, দিতে পারে না।
সিজিপিএ একটা বিষয় বটেঃ
যতকিছুই আমরা বলি না কেন সিজিপিএ একটা ব্যাপার বটে। কিছু কিছু কোম্পানি কখনো কখনো সিজিপিএ উল্লেখ করে দেয় যাদের সংখ্যা ৫% এরও কম। এরা সাধারণত সিজিপিএ ৩.০০ এর উপরে চায়। তাই সিজিপিএ ৩ এর উপরে রাখতে পারাটা আমার মনে হয় সেইফ সাইডে থাকার মত। (আমি নিজেও পারছি না। আফসোস!)
ভার্সিটি একটা বিষয় বটেঃ
একইভাবে ভার্সিটিও একটা বিষয় বটে। ১% এরও কম এমন কিছু কোম্পানি রিনাউন্ড ভার্সিটি বলতে বোঝে বুয়েট, কুয়েট, চুয়েট, রুয়েট আর সাস্ট। এরা হয়ত সংখ্যায় কম তবে আছে কিন্তু। তুমি ৩০ দিন চাকরির বিজ্ঞাপন দিলে ১ দিন হয়ত এদের খোঁজ পেতে পার। তাই আমি বলব সেইফ সাইডে থাকার জন্য তুমি এদের দিকে টার্গেট করে প্রস্তুতি নিতে পার। (আফসোস! আমি নিজেও বিপদে আছি।)
সব কথার শেষ কথা দক্ষতাঃ
আমার উপরে বর্তমানে একটা আইটি ফার্মের লোক নিয়োগের দায়িত্ব চেপে আছে। দায়িত্বটা আমি ইচ্ছা করে নিইনি আবার অন্য কেউও চাপায়নি। বরং দায়িত্বটা নিজ থেকে এসে আমার ঘাড়ে চেপে বসেছে। টর্চ মেরে লোক খুঁজতেছি কিন্তু পাচ্ছি না। পাচ্ছি না বলা ঠিক না, কথা হল তাদের নিচ্ছি না। সেদিন কুয়েটের এক ছেলে সিভি ড্রপ করল। কথা-বার্তা বললাম। রেজাল্ট ভাল। ভাল মানে ৩.৫ এর উপরে। কিন্তু কাজ-কর্ম কিছুই পারে না। এপ্লাই করেছিল সিস্টেম এডমিনিস্ট্রেশানের জন্য, ইন্টারভিউ নিয়ে বুঝলাম আমার সময়টাই মাঠে মারা গেল। তো ব্যাপার এটাই, যদি তোমার অভিজ্ঞতা না থাকে তবে যেমন ঠেকতে হবে তার চেয়েও বেশি ধাক্কা খেতে হবে দক্ষতা না থাকলে।
আইসিপিসি ভার্সিটির কোন মানদন্ড নাঃ
বেশিরভাগ পোলাপানের একটা ঘোড়ারোগ আছে। এরা এসিএম-আইসিপিসি দিয়ে ভার্সিটি হিসেব করে। আরে ভাই আইসিপিসি ভার্সিটির কোন কিছু না, এটা একটা ঐচ্ছিক ব্যাপার। আর সবচেয়ে বড়কথা আইসিপিসিতে ভাল তারাই করে যারা এক প্রকার কোডিং জিনিয়াস। আর ঐরকম কোডিং জিনিয়াস সবখানেই থাকে। এখন তুমি যদি মনে কর তুমি জিনিয়াস তাইলে তুমি যেখানেই থাক না কেন তুমি জেগে উঠবেই। আর যদি না হও, তবে ভাই বাছ-বিচার করে কি লাভ?
পাবলিক বনাম প্রাইভেটঃ
ইদানীং পোলাপান সবচেয়ে বেশি যুদ্ধ করে পাবলিক-প্রাইভেট ইস্যুতে। আমি বুঝি না মানুষে ফাও প্যাঁচালের এত সময় পায় কোথায়। তুমি পাবলিকে পড়বে নাকি প্রাইভেটে পড়বে এটা নির্ভর করে তোমার অর্থনৈতিক বিষয় ও পড়াশুনার উপর। পাবলিক ভার্সিটিতে চান্স পাবার বিষয় থাকে। বুয়েট, সাস্ট, কুয়েট, রুয়েট, ঢাবি, জাবিতে ট্রাই করতে পার। প্রাইভেটের ভিতর AIUB, NSU, BRAC, EWU, UIU ভাল বলে শুনেছি। তবে হা, আমার কাছে সবগুলাই সমান মনে হয়। কারণ কোন ভার্সিটি খারাপ শিক্ষা দেয় না। কিন্তু ভুঁইফোড় প্রাইভেট বিশ্ববিদ্যালয় থেকে সাবধান।
বড়ভাইতন্ত্রঃ
তোমরা গণতন্ত্রের নাম শুনেছ, সমাজতন্ত্রের নাম শুনেছ। কিন্তু এসবের বাইরেও ভার্সিটিতে এক প্রকার তন্ত্র চলে যার নাম বড়ভাইতন্ত্র। এর যেমন ভালদিক আছে তেমনি খারাপ দিকও আছে। ভাল দিকটা দেখতে পার সাস্টে। সাস্ট গত কয়েক বছরে পুরোপুরি ঘুরে দাঁড়িয়েছে। এর কারণ ওদের বড়ভাইতন্ত্র। ওদের ওখানে সিনিয়ররা নানা ক্লাব, কর্মসূচী, প্রতিযোগীতা ইত্যাদি দিয়ে ওদের সব সময় ব্যস্ত রাখে। ওরা সব সময় প্রোগ্রামিং করার ভিতরে থাকে বলেই ওরা এই সেক্টরে ধাপে ধাপে উন্নতির দিকে যাচ্ছে।
সবচেয়ে বড়কথা
সবচেয়ে বড়কথা হল মানুষের কথা না শুনে নিজের বিচার-বুদ্ধি কাজে লাগিয়ে কোথাও ভর্তি হয়ে যাও। পরিশ্রম কর, আশা করি ফল পাবে। আমি মোটামুটি কিছু জিনিস আলোচনার চেষ্টা করে। তারপরও কোন প্রশ্ন থাকলে আমার সাইটের কমেন্টবক্সে কর। আর হ্যাঁ, আমাদের “পটুয়াখালী বিজ্ঞান ও প্রযুক্তি বিশ্ববিদ্যালয়ে” তোমাদের সবাইকে আসবার আমন্ত্রণ।
#_Courtesy : মাকসুদুল রহমান মাতিন , পবিপ্রবি ।।

আমার কথা

কোনো একটা স্পেসিফিক জিনিসের পেছনে লেগে থাকাটা আসলেই খুবই কষ্টের । কিন্তু এই কষ্টটার আনন্দ তখনি যখন জিনিসটা তার অভীষ্ঠ লক্ষ্যে পৌছায় । ব্যাপারটা আমার কাছে অনেকটা নতুন কিছু আবিষ্কারের পরের মূহূর্তটার মত । আর আমি এটা করতে অসম্ভব রকমের ভালোবাসি । কারণ আমার প্যাশন আমাকে এটা শিখিয়েছে ।

তাই আর যাই হোক আমি এটা করি এবং এটা করে যাব । 
 
== Happy Coding 
 
বেসিক  
Signed integer ও UnSigned integer এর মধ্য পার্থক্য কি ?
উঃ  Signed integer ধনাত্মক বা ঋণাত্মক যেকোন সংখ্যাই ধারন করতে পারে । কিন্তু UnSigned integer কেবল ধনাত্মক সখ্যা ধারন করতে পারে । সেই সাথে UnSigned integer এর সুবিধা হচ্ছে এর রেইঞ্জ অনেক বেশি । 
যেমন Signed integer ধারন করে -32768 থেকে +32767্যন্তআর এদিকে UnSigned integer ধারন করে 0 থেকে 65535্যন্ত নাম্বারমূহ । সুতরাং কেবল ধনাত্মক খ্যা ধারন করায় কেবল UnSigned integer দিয়ে আপনি অনেক গুলু সখ্যা নিয়ে কাজ করতে পারছেন । 

আরো বিস্তারিত ভাবে বললে, Signed Integer মানে হলো ইন্টিজার ডাটাটার সামনে + বা - সাইন বসতে পারে। অর্থাৎ সংখ্যাটা পজিটিভ বা নেগেটিভ দুটোই হতে পারে। যখন এটা হয় তখন মোট যে কয়টা সংখ্যা লেখা যায় ইন্টিজার ব্যবহার করে সেটা দুভাগে ভাগ হয়ে যায়। অর্ধেকটা চলে যায় পজিটিভের জন্য, বাকীটা নেগেটিভের জন্য। রেঞ্জটা হয় -৩২৭৬৮ থেকে ৩২৭৬৭।
আর Unsigned Integer এর সামনে কোন চিহ্ন নেই, তাই সেটা অবশ্যই পজিটিভ। তখন মোট যতগুলো লেখা যায় তার সবগুলোই পজিটিভ নম্বর লেখার জন্য ব্যবহৃত হয়। রেঞ্জঃ ০ থেকে ৬৫৫৩৫।