কম্পিউটার

মানচিত্র ফাংশন ব্যবহার করে পাইথনে একটি বাইনারি স্ট্রিং-এ পরপর 1 এর সর্বোচ্চ দৈর্ঘ্য


কখনও কখনও সংখ্যার বাইনারি উপস্থাপনা নিয়ে কাজ করার সময় আমাদের সংখ্যায় কতটি অবিচ্ছিন্ন 1 উপস্থিত রয়েছে তা খুঁজে বের করার প্রয়োজন হতে পারে। এই নিবন্ধটি দুটি উপায় দেখায় কিভাবে আমরা এটি খুঁজে পেতে পারি।

বিভক্ত এবং মানচিত্র ব্যবহার করা

পাইথনের স্প্লিট ফাংশনটি প্রদত্ত স্ট্রিংটিকে একাধিক স্ট্রিংয়ে বিভক্ত করতে ব্যবহার করা যেতে পারে। আমরা এটিকে শূন্য দিয়ে বিভক্ত করি এবং মানচিত্র ফাংশনটি উৎপন্ন বিভাজনের মধ্যে সর্বোচ্চ দৈর্ঘ্য খুঁজে বের করতে ব্যবহৃত হয়।

উদাহরণ

ডেটা ='1111000011111000001111101010101010101011111111'def Max_len_cons_1(data):প্রিন্ট ("পরপর একটির সর্বোচ্চ সংখ্যা:",max(map(len,'data)'0101010101010101010101111111'def Max_len_cons_1(data):",max(map(len',data)011111010101010101010101111111'def Max_len_cons_1(data):",max(map(len,'data)'(Max)_x) 

আউটপুট

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

পরপর একটির সর্বোচ্চ সংখ্যা:8

রেগুলার এক্সপ্রেশন ব্যবহার করা

পাইথনের রি মডিউলটি পরপর 1 এর সর্বাধিক সংখ্যা গণনা করতেও ব্যবহার করা যেতে পারে। এখানে আমরা 1+ এর প্যাটার্ন খুঁজে পেয়েছি যা 1 এর বর্তমান এক বা একাধিক সংখ্যা নির্দেশ করে। তারপর সেই প্যাটার্নগুলির মধ্যে সর্বাধিক দৈর্ঘ্য খুঁজুন৷

উদাহরণ

data ='11110000111110010011'import rethe_ones =re.findall(r"1+", data)print("The blocks of one's:",the_ones)print("পরপর একজনের সর্বাধিক সংখ্যা =", len(max( the_ones, key=len)))

আউটপুট

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

একটির ব্লক:['1111', '11111', '1', '11']পরপরের সর্বোচ্চ সংখ্যা =5

  1. পাইথনে DFA ব্যবহার করে 3-এর বাইনারি স্ট্রিং মাল্টিপল আছে কিনা তা পরীক্ষা করুন

  2. পাইথন - int() ফাংশন

  3. ম্যাপ() ফাংশন ব্যবহার করে পাইথনে যোগফল 2D অ্যারে

  4. পাইথন প্রোগ্রাম পরপর 1’ ছাড়া বাইনারি স্ট্রিং সংখ্যা গণনা করতে