মান লজিয়ে, আমাদের একটি অ্যারে দেওয়া আছে যাতে একই দৈর্ঘ্যের বেশ কিছু স্ট্রিং রয়েছে। আমাদের যাচাই করতে হবে যে آیا প্রদত্ত किन्हু দুটি স্ট্রিং একই পজিশনে শুধু এক ক্যারেক্টর দিয়ে ভিন্ন কিনা। যদি এই পার্থক্য থাকে তবে True রিটার্ন করুন, অন্যথায় False।
ইনপুট: dict = ['pqrs', 'prqs', 'paqs'] → আউটপুট: True। কারণ সব স্ট্রিংই ইনডেক্স 1-এ ভিন্ন। যেকোনো দুটি জোড়া নিলে ওই পজিশনে পার্থক্য পাওয়া যাবে।
সমাধানের ধাপসমূহ
seens := একটি নতুন সেট
dict-এর প্রতিটি word-এর জন্য:
- word-এর প্রতিটি ইনডেক্স i এবং ক্যারেক্টার c-এর জন্য:
- masked_word := word[0:i] + '.' + word[i+1:]
- যদি masked_word seens-এ থাকে, তবে True রিটার্ন করুন
- অন্যথায় seens-এ masked_word যোগ করুন
- word-এর প্রতিটি ইনডেক্স i এবং ক্যারেক্টার c-এর জন্য:
False রিটার্ন করুন
উদাহরণ (Python)
def solve(dict):
seens = set()
for word in dict:
for i, c in enumerate(word):
masked_word = word[:i] + '.' + word[i+1:]
if masked_word in seens:
return True
else:
seens.add(masked_word)
return False
print(solve(['pqrs', 'prqs', 'paqs']))
ইনপুট
['pqrs', 'prqs', 'paqs']
আউটপুট
True