আপনার একটি প্রোগ্রাম বা ফাংশন লিখতে হবে যা ইনপুট আউটপুট হিসাবে টেট্রিস ব্লকের একটি তালিকা দিয়েছে বা টুকরো সংযোগ করতে পারে একই উচ্চতা স্তরের দুটি পয়েন্টের মধ্যে সবচেয়ে বড় ব্যবধানটি দেয়।
Types ধরণের টেট্রিসের টুকরোগুলি নিম্নলিখিত:
এই আকারগুলি উল্লেখ করে আমরা যথাক্রমে I, J, L, O, S, T এবং Z অক্ষর দ্বারা এই টুকরোগুলি উল্লেখ করব। আপনি টুকরোগুলি ঘোরতে পারেন তবে কোনও টেট্রিস গেমের মতো এগুলি আয়না করতে পারবেন না।
আমাদের কাজটি প্রদত্ত টুকরোগুলি থেকে একটি orthogonally সংযুক্ত অঞ্চল (পক্ষের সাথে সংযুক্ত দিক) তৈরি করা। এই অঞ্চলটি দুটি উচ্চ ইউনিটের স্কোয়ারগুলি (অরথোগোনালিও) সংযোগ করা উচিত যা একই উচ্চতায়। দুটি স্কোয়ারের মধ্যে আমরা সবচেয়ে বড় সম্ভাব্য ব্যবধানটি সন্ধান করতে পারি যা আমরা ব্রিজ করতে পারি।
বিস্তারিত উদাহরণ
টুকরা এল দিয়ে আমরা 3 এর ফাঁক সংযোগ করতে পারি
L
XLLLX
টুকরা এস দিয়ে আমরা 2 এর ফাঁক সংযোগ করতে পারি
SS
XSSX
এস, এস, হে টুকরো দিয়ে আমরা 7 এর ফাঁক সংযোগ করতে পারি (নোট করুন যে আমরা 8 এর ফাঁকটি সংযোগ করতে পারি না)
S
XSSOO SSX
SOOSS
ইনপুট
- একটি স্ট্রিং কেবলমাত্র বড় হাতের অক্ষর I, J, L, O, S, T এবং Z সহ উপলব্ধ টুকরোগুলিকে প্রতিনিধিত্ব করে Every
- বর্ণগুলি স্ট্রিংয়ে বর্ণানুক্রমিক ক্রমে থাকবে।
- স্ট্রিং কমপক্ষে একটি অক্ষর দীর্ঘ হবে।
আউটপুট
- একটি একক ধনাত্মক পূর্ণসংখ্যা, প্রদত্ত টুকরোগুলির সাথে সংযোগযোগ্য বৃহত্তম গ্যাপ।
উদাহরণ
ইনপুট => আউটপুট
OSS => 7
LS => 5
LZ => 6
ZZZZ => 10
LLSSS => 14
IIJSSSTTZ => 28
IISSSSSS => 24
OOOSSSSSSSSSSSSTT => 45
IJLOSTZ => 21
IJLOSTZZZZZZZ => 37
IIJLLLOSTT => 31
IJJJOOSSSTTZ => 35
এটি কোড-গল্ফ তাই সংক্ষিপ্ত এন্ট্রি জিততে পারে।