পটভূমি
তিন বছর আগে, এই লোক টম মারফি একটি ভাষায় সমস্ত শব্দের কাছে একজন পোর্টম্যান্টিউর ধারণাটি প্রসারিত করার জন্য এটি নিজের মাথায় নিয়ে এসেছিল এবং একে একে পোর্টম্যান্ট আউট বলে ( পোর্টম্যানটিউ প্লাস টাউট [ সকলের জন্য ফরাসী ]) বলে। ইংরেজীকে 108,709 শব্দের একটি তালিকা হিসাবে সংজ্ঞায়িত করে, তিনি নিম্নলিখিত দুটি বৈশিষ্ট্য সহ 611,820 বর্ণের ক্রম সন্ধান করতে সক্ষম হন:
- প্রতিটি ইংরেজী শব্দ স্ট্রিংয়ে থাকে।
- স্ট্রিংয়ে দুটি সংলগ্ন অক্ষর সমন্বিত কিছু প্রতিবেশ একটি ইংরেজি শব্দ।
এখানে এমন একটি পৃষ্ঠার লিঙ্ক, যার উপরে এই পোর্টম্যান্ট খুঁজে পাওয়া যাবে (একটি ভিডিও ব্যাখ্যা সহ)।
একটি পোর্টম্যান্টআউট
পোর্টম্যান্টআউটের দুটি বৈশিষ্ট্যের মধ্যে প্রথমটি বোঝা সহজ। দ্বিতীয়টির কিছু ব্যাখ্যা প্রয়োজন হতে পারে।
মূলত, শব্দ অবশ্যই ওভারল্যাপ করা উচিত। "গল্ফকোড" কখনই ইংরেজির পোর্টম্যান্টআউটে প্রদর্শিত হবে না, কারণ সেখানে "এফসি" থাকা কোনও শব্দ নেই। তবে, আপনি একটি পোর্টম্যান্টআউটে "কোডগল্ফ" খুঁজে পেতে পারেন, কারণ "অহং" ব্যবধানটি কমিয়ে দেয় (এবং অন্য সমস্ত বর্ণের অক্ষর হয় "কোড" বা "গল্ফ" তে থাকে)।
তোমার কাজ:
এমন একটি প্রোগ্রাম বা ফাংশন লিখুন যা স্ট্রিংয়ের একটি তালিকা নেয় এবং তালিকার কোনও পোর্টম্যান্ট আউট দেয়।
এই পাইথন 3 কোডটি একটি পোর্টম্যান্টআউট যাচাই করবে।
পরীক্ষার মামলা
সমস্ত তালিকা আনঅর্ডারড; এটাই,
{"code", "ego", "golf"} -> "codegolf"
{"more", "elm", "maniac"} -> "morelmaniac" or "morelmorelmaniac" or "morelmorelmorelmaniac" or...
Would a morelmaniac be some sort of mycologist?
{"ab", "bc", "cd", "de", "ef", "fg", "gh", "hi", "ij", "jk", "kl", "lm", "mn", "no", "op", "pq", "qr", "rs", "st", "tu", "uv", "vw", "wx", "xy", "yz", "za"} -> "abcdefghijklmnopqrstuvwxyza" or "rstuvwxyzabcdefghijklmnopqrstuvwxyzabcdef" or any 27+ letters in order
এবং কেন না? আপনার কোডটি যদি যুক্তিসঙ্গত সময়ের মধ্যে কার্যকর করা হয় তবে মার্ফির সাইটে প্রচুর পরিমাণে।
বিধি
- আপনার কোড অবশ্যই থামানো উচিত।
- প্রতিটি মৃত্যুদণ্ডের সাথে আপনাকে একই পোর্টম্যান্ট ফেরত দেওয়ার দরকার নেই।
- আপনি ধরে নিতে পারেন যে সমস্ত স্ট্রিং কেবলমাত্র ছোট হাতের অক্ষর
a
দ্বারা গঠিতz
। - যদি কোনও পোর্টম্যান্টআউট সম্ভব না হয় তবে আপনার প্রোগ্রামটি কিছু করতে পারে। উদা:
{"most", "short", "lists"}
- I / O এবং লুফোলগুলির জন্য মানক বিধিগুলি প্রযোজ্য।
এটি কোড-গল্ফ , তাই প্রতিটি ভাষার সংক্ষিপ্ততম সমাধান (বাইটে) জিতে! শুভ গল্ফিং!
{"sic", "bar", "rabbits", "cradle"} -> "barabbitsicradle"
{"mauve", "elated", "cast", "electric", "tame"} -> "mauvelectricastamelated"
(আরও পরীক্ষার কেস)