কম্পিউটার টিউটোরিয়াল

পাইথনে স্ট্রিং থেকে দ্বিতীয় সর্বোচ্চ ডিজিট বের করা


একটি অ্যালফানিউমেরিক স্ট্রিং s দেওয়া আছে। s-এ উপস্থিত ডিজিটগুলোর মধ্যে দ্বিতীয় সর্বোচ্চ ডিজিট বের করতে হবে। যদি না থাকে, তবে -1 ফেরত দিন।

যেমন, s = "p84t3ho1n" হলে আউটপুট ৪। কারণ ডিজিটগুলো: [1,3,4,8], দ্বিতীয় সর্বোচ্চ ৪।

সমাধানের ধাপসমূহ

  • lst := একটি খালি সেট
  • s-এর প্রতিটি let এর জন্য:
    • যদি let অক্ষর না হয় (অর্থাৎ ডিজিট হয়), তবে lst-এ int(let) যোগ করুন।
  • যদি lst-এর আকার <= 1 হয়, তবে -1 ফেরত দিন।
  • lst সর্ট করে দ্বিতীয় শেষ উপাদান ফেরত দিন।

উদাহরণ

def solve(s):
    lst = set()
    for let in s:
        if not let.isalpha():
            lst.add(int(let))
    if len(lst) <= 1:
        return -1
    return sorted(list(lst))[len(lst) - 2]

s = "p84t3ho1n"
print(solve(s))

ইনপুট

"p84t3ho1n"

আউটপুট

4

  1. পাইথন প্রোগ্রাম: অ্যানাগ্রাম শব্দের সর্বোচ্চ সাবসেটের আকার বের করা

  2. পাইথন প্রোগ্রাম: স্ট্রিং-এ মিরর ক্যারেক্টার বের করা

  3. পাইথন প্রোগ্রাম: অ্যানাগ্রাম শব্দের সর্বোচ্চ সাবসেটের আকার বের করা (Duplicate)

  4. পাইথনে লিস্ট থেকে সর্বোচ্চ, সর্বনিম্ন, দ্বিতীয় সর্বোচ্চ ও দ্বিতীয় সর্বনিম্ন বের করা