H. Maximal AND || Codeforces Round #784 (Div. 4)

প্রব্লেম স্টেট্মেন্টঃ একটি অ্যারে দেয়া হবে। অ্যারের প্রত্যেকটি ইলিমেন্টের শূন্য থেকে তিরিশ টি  বিটের মধ্যে যেকোন একটিকে সেট বিট বানানো যাবে। এই কাজটি করা যাবে ম্যাক্সিমাম K পর্যন্ত। অপারেশন শেষে প্রত্যেকটি ইলিমেন্টের বিটওয়াইজ এন্ড করলে ম্যাক্সিমাম কত ভ্যালু পাওয়া যাবে, সেটি আমাদের বের করতে হবে।

ইমপ্লিমেন্টেশনঃ আমরা ৩০ নাম্বার বিট থেকে চ্যাক করবো, যদি সেট বিট পাওয়া যায়, কাউন্ট করে রাখবো। সবশেষে আমরা ৩০ নাম্বার বিট থেকে ০ পর্যন্ত একটি লুপ চালাবো। তারপর ইটারেট করা বিট গুলোর মধ্যে কাউন্ট করে দেখবো কতগুলা ইলিমেন্টে সেট বিট ছিলো। বাকি বিট যদি  বিট থেকে ছোট বা সমান হয় তাহলে আমরা সিমপ্লি সেটবিটের পাওয়ার করে দিবে(1<<INDEX) এবং যোগ করবো।

কোডঃ



Comments

Popular Posts