প্রতিযোগিতামূলক প্রোগ্রামিংয়ে সবচেয়ে গুরুত্বপূর্ণ বিষয় হল ইফেক্টিভ কোড। অপ্টিমাইজড এবং দ্রুত কোড গুরুত্বপূর্ণ এবং প্রোগ্রামারের র্যাঙ্কে পার্থক্য লায়।
প্রতিযোগিতামূলক প্রোগ্রামিংয়ে দক্ষ C/C++ কোড লিখতে, এখানে কিছু ইফেক্টিভ টুল রয়েছে,
প্রথমে কিছু বেসিক টার্ম রিক্যাল করি,
টেমপ্লেট হল একটি নির্দিষ্ট টাইপের ওপর নির্ভর না করে কোড লিখা।
ম্যাক্রো হল একটি নামকৃত কোড ফ্র্যাগমেন্ট।
ভেক্টর হল অটোমেটিক্যালি রিসাইজেবল ডাইনামিক অ্যারে যা এলিমেন্ট ইনসারশন এবং ডিলিশনে সাইজ আপডেট করে।
এখন, কোডে কিছু বেসিক আপডেট দেখি যা কোডের ইফিশিয়েন্সি বাড়াতে পারে,
C/C++-তে দ্রুত ইনপুট/আউটপুট মেথড ব্যবহার − scanf/printf দ্রুত ইনপুট-আউটপুট মেথড।
ভেরিয়েবলকে সর্বোচ্চ ও ন্যূনতম মান দিয়ে অ্যাসাইন করা − min-max ফাংশন ব্যবহার করলে ঝামেলা কমে।
রেঞ্জ-বেসড লুপ তৈরি করা − ইফেক্টিভ কোডিংয়ের জন্য অ্যারে এবং ভেক্টরে রেঞ্জড লুপ ব্যবহার করে ইটারেট করা।
উদাহরণ
#include<iostream>
using namespace std;
int main() {
cout<<"Iterating over array using ranged array: ";
int array[]= {6, 10, 31, 17, 50};
for (const auto &value: array)
cout<<value<<" ";
return 0;
}
আউটপুট
Iterating over array using ranged array: 6 10 31 17 50
- উপযুক্ত হেডার ফাইল ব্যবহার করা − সাধারণত C++ প্রোগ্রামিংয়ে বিভিন্ন লাইব্রেরি রয়েছে যা প্রোগ্রামে বিভিন্ন ফাংশনালিটি যোগ করতে ব্যবহৃত হয়। হেডার ফাইল: #include<bits/stdc++.h>-এ প্রায় সব ফাইল রয়েছে যা প্রতিযোগিতামূলক প্রোগ্রামিংয়ে প্রয়োজন হয়। কিন্তু প্রোগ্রামিং করার সময় নিশ্চিত করুন যে আপনাকে এই ফাংশনগুলোতে से কিছু প্রয়োজন কিনা এই লাইব্রেরি ইনক্লুড করার আগে। অন্যথায়, এটি কম্পিউটিং স্পেস নিতে পারে।
স্পেস কমাতে কন্টেইনার ব্যবহার করা − ভেক্টর, ম্যাপ, লিস্ট ইত্যাদি কন্টেইনারগুলো যা প্রতিযোগিতামূলক প্রোগ্রামিংয়ে অনেক সমস্যা সমাধান করতে ব্যবহৃত হয়। এই কন্টেইনারগুলোর প্রিডিফাইনড ফাংশনগুলো কোডের সাইজ কমায় এবং এটাকে আরও ইফেক্টিভ করে তোলে।
ডেটা টাইপ ডিক্লেয়ার করতে auto ব্যবহার করুন, কারণ কম্পাইল টাইমে তাদের টাইপ ডিফাইন হয়।