কাইলথুলগ ক্রিস প্রিসির একটি ভাষা যা ইনফিক্স নোটেশনের সমস্যাটিকে পানফিক্স বলে যা সমাধান করে তা সমাধান করার চেষ্টা করে :
পোস্টফিক্সের মতো, প্যানফিক্সকে ডিফল্ট অপারেটর অগ্রাধিকারকে ওভাররাইড করতে প্যারেনেসিসের মতো আরকেন অবদানের প্রয়োজন নেই। একই সময়ে, পানফিক্স শর্তগুলি ইনফিক্সের মতো একই ক্রম এবং পদ্ধতিতে নির্দিষ্ট করার অনুমতি দেয়, যারা এটিতে অভ্যস্ত হয়ে উঠেছে তাদের জন্য সন্দেহাতীতভাবে প্রাকৃতিক এবং স্বজ্ঞাত স্বরলিপি।
উপসর্গ বা পোস্টফিক্সের অসামান্যতার সাথে আপনি কীভাবে ইনফিক্স স্বরলিপিটির সুবিধা পাবেন? তিনটি অবশ্যই ব্যবহার করুন!
=y=+*3*x*+1+=
আরও আনুষ্ঠানিকভাবে, +
একটি অপারেটর হতে দিন a
এবং b
ভাব প্রকাশ করুন। তারপরে (a+b)
একটি বৈধ (প্রথম বন্ধনীযুক্ত) ইনফিক্স এক্সপ্রেশন, সেই অভিব্যক্তির প্যানফিক্স উপস্থাপনাটি +a+b+
যেখানে সংক্ষিপ্ত অবস্থানটি উপসংহারকে উপস্থাপন করে ।
আপনার লক্ষ্যটি হল একটি প্যানফিক্স স্ট্রিং নেওয়া এবং একে সম্পূর্ণ বন্ধনীযুক্ত ইনফিক্সে রূপান্তর করা:
(y=((3*x)+1))
সরলতার জন্য, আমরা নিম্নলিখিত পরিবর্তনগুলি করব:
- অপারেটরগুলিতে কেবল দুটি অনন্য অক্ষর থাকতে পারে (আপনি যে কোনও চয়ন করতে পারেন, তবে এখানে আমি ব্যবহার করব
*
এবং+
)। - এখানে কেবল একটি আক্ষরিক রয়েছে, যা অন্য একটি স্বতন্ত্র চরিত্র নিয়ে গঠিত (আপনি যে কোনও চয়ন করতে পারেন, তবে আমি এখানে ব্যবহার করব
_
)। - ইনপুটটি একটি সুগঠিত পানফিক্স এক্সপ্রেশন হবে।
জন্য জটিলতা , আমরা নিম্নলিখিত পরিবর্তন করে নেব:
- অপারেটরগুলি কেবল একটি নয়, কোনও ধনাত্মক সংখ্যক অক্ষর নিয়ে গঠিত ।
এটি চ্যালেঞ্জটিকে আরও জটিল করে তোলে কারণ অপরিহার্যভাবে অপারেটর অক্ষরের একটি প্রদত্ত স্তরকে বাকী স্ট্রিং না দেখে পার্টিশন করা যায় তা আপনি নির্ধারণ করতে পারবেন না।
চ্যালেঞ্জের জন্য এখানে একটি রেফারেন্স বাস্তবায়ন , @ ব্যবহারকারী ২০২২২৯ এর সৌজন্যে।
পরীক্ষার কেস
format: input -> output
+*+_*+_*+++_+*+_*+_*+++ -> ((_*+_)+(_+(_*+_)))
**++*+***++_+_++_+*++*+***_*++*+*****_**_*_*** -> ((((_+_)+_)*++*+***_)*(_*(_*_)))
***_**_***_* -> ((_**_)*_)
+_+_+ -> (_+_)
*+*+++**+***+++++_*+*+++**+***+++++_*+*+++**+***+++++ -> (_*+*+++**+***+++++_)
*++++*+*_*_*+*+++****+_++****+_++****++*+*+++_*+++ -> (((_*_)+*+(_++****+_))*+++_)
+**+_*+_*+*_*+*_*+*_+*_+**+ -> (((_*+_)*_)+(_*(_+*_)))
+**+++++_+++++_+++++*_*+*+_++++++_+++++_+++++++* -> (((_+++++_)*_)+*(_+(_+++++_)))
+*+*+_+*+_+*+*_*+*_*+*+_+*+_+*+*+ -> (((_+*+_)*_)+(_*(_+*+_)))
**_**_**_*_****_* -> ((_*(_*(_*_)))*_)
আমি এই চ্যালেঞ্জটির জন্য ইনফিক্স স্ট্রিং উত্পন্ন করতে এই প্রোগ্রামটি ব্যবহার করেছি (পানফিক্সে রূপান্তর করা তুচ্ছ, তবে বিপরীতটি নয়)।
**_**_**_*_****_*
। আমি যে উত্তরগুলি পরীক্ষা করেছি সেগুলি এই সমস্ততে ব্যর্থ হয়েছে।
(_ + _)
?