আইবুগ সাম্প্রতিক, এখনও মূল্যবান উপকরণ দিয়ে তৈরি একটি দীর্ঘ বার পেয়েছে। বারটি এত দীর্ঘ যে আইবুগ সহজেই ক্রেডিটগুলির জন্য এটি বিক্রি করতে পারে না, তাই তিনি এটি কাটতে চান। বারটি এমন ভঙ্গুর এবং যাদুযুক্ত উপাদানের দ্বারা তৈরি যা যদি কোনও অংশটি ভাঙা হয় তবে একই উপাদান দিয়ে তৈরি বারের সমস্ত অংশও ভেঙে যায়, ফলে নির্বিচারে কাটা শক্ত হয়ে যায়।
আইবুগ বারটি যতটা সম্ভব টুকরো টুকরো করতে চায়। তিনি খুব সংক্ষিপ্ত প্রোগ্রাম এবং কোড-গল্ফিং পছন্দ করেন, তাই তিনি তার সমস্যার একটি বিমূর্ত বিশ্লেষণ করেছেন।
আইবুগের ম্যাজিক বারটি স্ট্রিং হিসাবে উপস্থাপিত হয় (বা একটি অ্যারে বা আপনি যদি পছন্দ করেন তবে অক্ষরের অনুক্রম), এর মতো:
aaabbccccccbbbaaacccccaabbbaaaaa
স্ট্রিংয়ের প্রতিটি অক্ষর একটি যাদু উপাদান প্রতিনিধিত্ব করে। বারটি সর্বদা RegEx এর সাথে মিলে যায় ^\w*$
তাই বারে 63৩ টি পর্যন্ত সামগ্রী থাকতে পারে। একটি "অংশ" কোনও অক্ষরের ক্রমাগত ক্রম যা স্পেস দ্বারা পৃথক নয় ence
iBug আপনাকে এমন একটি প্রোগ্রাম লিখতে চায় যা সে পেতে পারে এমন সর্বাধিক অংশ গণনা করে, যদি শূন্য বা আরও বেশি অক্ষর সেটগুলি পুরোপুরি সরিয়ে ফেলা হয় (স্পেস দ্বারা প্রতিস্থাপিত), এবং সেই নম্বরটি iBug কে বলুন।
উদাহরণ 1:
In: aaabbccccccbbbaaacccccaabbbaaaaa
Out: 4
বিবরণ: যদি b
বার থেকে পুরোপুরি সরানো হয় তবে আইব্যাগ 4 টি অংশ পেতে পারে। তিনি অপসারণ করে b
এবং 4 টি অংশ পেতে পারেন c
, যেমন নীচে দেখানো হয়েছে
aaabbccccccbbbaaacccccaabbbaaaaa # Original string
aaa cccccc aaacccccaa aaaaa # Remove 'b'
aaa aaa aa aaaaa # Remove 'b' and 'c'
এবং এই বারটি থেকে আইব্যাগটি সর্বাধিক সংখ্যক অংশ পেতে পারে
উদাহরণ 2:
In: 111aa___9999____aaa99111__11_a_aa999
Result: 111aa 9999 aaa99111 11 a aa999
Out: 6
বিবরণ: কেবল আন্ডারস্কোরটি সরিয়ে আইবুগ বার থেকে 6 টি অংশ পেতে পারে এবং এটি সর্বোচ্চ।
উদাহরণ 3:
In: __________
Out: 1
বর্ণনা: কি? আপনি এই কাটা চান? আপনি যদি এটি একেবারে কাটা না করেন তবে 1 অংশ পাওয়া সম্ভব possible
উদাহরণ 4:
In:
Out: 0
বর্ণনা: কাটার কিছুই নেই, তাই শূন্য।
কিছু নিয়ম রয়েছে যা আইবুগ প্রোগ্রামগুলি মান্য করতে চায়:
আইবুগ স্ট্যান্ডার্ড লুফোলগুলি অপছন্দ করে এবং সেগুলি নিষিদ্ধ।
যতক্ষণ না এটি কাজ করে, ততক্ষণ পুরো প্রোগ্রাম হওয়ার দরকার নেই। একটি ফাংশন যা প্যারামিটার থেকে ইনপুট নেয় এবং রিটার্ন মান দিয়ে আউটপুট দেয় তাও গ্রহণযোগ্য accepted
নমনীয় ইনপুট এবং আউটপুট অনুমোদিত। আপনার প্রোগ্রাম বা ফাংশনটি স্ট্রিং, বা অক্ষরের একটি অ্যারে বা আপনি যেটিকে মোকাবেলা করতে সবচেয়ে সহজ মনে করেন তা নিতে পারে। আপনি সংখ্যাটি মুদ্রণ করে বা এটি ফেরত দিয়ে আউটপুট দিতে পারেন।
নমুনা পরীক্ষার কেসগুলি (তবে এগুলিতে সীমাবদ্ধ নয়)
aaabbbaaa = 2
123456789 = 5
AaAaAaAa = 4
aaabcccdedaaabefda = 6
________ = 1
(empty) = 0
যেহেতু এটি একটি কোড-গল্ফ , তাই প্রতিটি ভাষার মধ্যে সংক্ষিপ্ততম প্রোগ্রাম (বাইটে) জিতে!
অতিরিক্ত
আপনি যদি আপনার প্রোগ্রামটির জন্য ব্যাখ্যা সরবরাহ করতে পারেন তবে এটি আপনার স্কোরিংকে প্রভাবিত করে না (যদিও এটি এখনও বাইটে দৈর্ঘ্য) iBug আপনাকে অত্যন্ত প্রশংসা করে।
2468
, দ্বিতীয়টির জন্য, সরান bd
।
2,4,6,8
প্রথম b,d,f
থেকে দ্বিতীয়টি সরিয়ে ফেলবেন ।
123456789
ফলন হয় 5? এবং কিভাবেaaabcccdedaaabefda
ফলন 6? এই দুটি পরীক্ষার ক্ষেত্রে আমি যথাক্রমে 2 এবং 4 পাই get