নিম্নলিখিত স্ট্রিং বিবেচনা করুন:
Tin Snips
এই স্ট্রিংটিতে পর্যায় সারণীতে বেশ কয়েকটি পারমাণবিক চিহ্ন রয়েছে । আমরা তাদের কয়েকটি সনাক্ত করতে এই স্ট্রিংটি পুনরায় লিখতে পারি:
[Ti][N] [Sn][I][P][S]
অবশ্যই, আমরা এটিও এভাবে লিখতে পারি:
T[In] [S][Ni][P][S]
ইনপুট পুনর্লিখনের নিয়মগুলি নিম্নরূপ:
- ইনপুটটির ক্ষেত্রে পারমাণবিক প্রতীকগুলির মিলের ক্ষেত্রে কিছু আসে যায় না।
- যদি কোনও উপাদান একটি পারমাণবিক প্রতীক হিসাবে ব্যবহৃত হয় তবে এর ক্ষেত্রে অবশ্যই পরিবর্তন হওয়া উচিত তাই প্রতীকটি সঠিক। প্রাক্তন:
h
হয়ে যাবে[H]
। - সমস্ত উপাদান চিহ্নগুলি ASCII বর্গক্ষেত্র বন্ধনীতে আবদ্ধ করা হয়েছে
[
এবং]
। - হোয়াইটস্পেস সংরক্ষিত:
Big ego
"জি" এবং "ই" একত্রিত করতে পারে না[Ge]
। - সমস্ত ইনপুট অক্ষরকে পারমাণবিক প্রতীকের সাথে একত্রিত করার প্রয়োজন হয় না: যদি কোনও ইনপুট অক্ষরকে একটি প্রতীক হিসাবে স্থাপন না করা হয় তবে এটি যেমন হয় তেমনটি পাস হয় (কেস কোনও ব্যাপার নয়)।
- যদি একটি প্রতীক তৈরি করা যায় তবে এটি তৈরি করা আবশ্যক । অন্য কথায়,
Tin
উপরের উদাহরণে আউটপুট দেওয়ার অনুমতি নেই কারণ এই শব্দটিতে কমপক্ষে একটি প্রতীক তৈরি করা সম্ভব। কেবলমাত্র যখন অক্ষরটি অব্যবহৃত হয়ে যায় তখনই যখন এটি পারমাণবিক চিহ্ন তৈরি করতে ব্যবহার করা যায় না। - এই চ্যালেঞ্জের উদ্দেশ্যে, হাইড্রোজেন (1) থেকে ওগেনেসন (118) পর্যন্ত সমস্ত উপাদান বৈধ। কোনও উচ্চতর উপাদান বৈধ নয়।
- কিছু উচ্চতর উপাদানগুলির দ্ব্যর্থক নাম এবং চিহ্ন রয়েছে: এই চ্যালেঞ্জের উদ্দেশ্যে উইকিপিডিয়ায় সংস্করণ ব্যবহার করা হবে। সুবিধার্থে মঞ্জুরিযোগ্য পারমাণবিক প্রতীকগুলি এখানে রয়েছে: এইচ, হি, লি, বি, বি, সি, এন, ও, এফ, নে, না, এমজি, আল, সি, পি, এস, ক্ল, আর, কে, সিএ, এসসি, তি, ভি, সিআর, এমএন, ফে, কো, নি, কিউ, জেডএন, গা, জি, আস, সে, ব্র, কেআর, আরবি, এসআর, ওয়াই, জেআর, এনবি, মো, টিসি, রু, আরএইচ, পিডি, এগ্র, সিডি, ইন, স্ন, এসবি, তে, আই, এক্স, সিএস, বা, লা, সি, প্র, এনডি, পিএম, এসএম, ইইউ, জিডি, টিবি, ডি, হো, এর, টিএম, ওয়াইবি, লু, এইচএফ, তা, ডাব্লু, রে, ওস, ইর, পেন্ট, আউ, এইচজি, টি, পি, বি, বি, পো, এট, আরএন, ফ্র, রা, এসি, থ, প, ইউ, এনপি, পু, এম, সিএম, বি কে, সিএফ, এস, এফ, মো, না, এলআর, আরএফ, ডিবি, এসজি, ভি, এইচ, এমটি, ডিএস, আরজি, সিএন, এনএইচ, ফ্ল, ম্যাক, এলভি, এস, ওগ
এমন একটি প্রোগ্রাম বা ফাংশন লিখুন যা কোনও একক সরবরাহিত ইনপুট থেকে সমস্ত সম্ভাব্য আউটপুট তৈরি করে। ইনপুট এবং আউটপুট উভয়ই আপনার পছন্দের কোনও ফর্ম হতে পারে। এটি স্ট্রিং, অক্ষরের অ্যারে বা অন্য কোনও ডেটা স্ট্রাকচার হতে পারে: যা কিছু সুবিধাজনক এবং স্পষ্টভাবে ইনপুট এবং আউটপুটকে উপস্থাপন করে। আপনার কোডের বাইরে / আউটপুট উভয়ই ইনপুট এবং আউটপুট পাস হতে পারে তবে আপনি বেছে নিন: স্ট্যান্ডার্ড ইন / আউট, ফাংশন আর্গুমেন্ট / রিটার্ন, বা অন্য কিছু।
- ইনপুটটি সালিসী ক্ষেত্রে এবং স্থানের কেবলমাত্র ASCII অক্ষরযুক্ত ধনাত্মক দৈর্ঘ্যের একটি স্ট্রিং (পূর্ববর্তী অনুচ্ছেদ দেখুন) হবে (
0x20
) অক্ষর থাকবে। - আপনার কোডকে অবশ্যই সমস্ত আউটপুট স্ট্রিং তৈরি করতে হবে যা উপরের ইনপুট নিয়ম ব্যবহার করে তৈরি করা যেতে পারে।
- আউটপুট ক্রম বাস্তবায়ন সংজ্ঞায়িত হয়। একমাত্র প্রয়োজনীয়তা এই সমস্ত আউটপুট স্ট্রিং উপস্থিত।
- যদি কোনও বৈধ ইনপুট স্ট্রিং সহ উপস্থাপন করা হয় যা কোনও পারমাণবিক চিহ্ন ধারণ করে না, কেবল ইনপুট স্ট্রিংটিকে আউটপুট দেয়।
- যদি উপরের নিয়ম অনুসারে বৈধ নয় এমন একটি ইনপুট স্ট্রিং উপস্থাপন করা হয় (নাল, শূন্য অক্ষর, অবৈধ অক্ষর রয়েছে ইত্যাদি) আপনার প্রোগ্রামে কিছু করতে পারে (ক্রাশ, ফাঁকা আউটপুট ইত্যাদি)
- আউটপুট পর্যায় সারণীর সাথে মেলে প্রয়োজন পারমাণবিক প্রতীক ছাড়া কেস-সংবেদনশীল।
- স্ট্যান্ডার্ড লুফোলগুলি অনুমোদিত নয়।
পরীক্ষার কেস:
Tin Snips
[Ti][N] [Sn][I][P][S]
[Ti][N] [S][Ni][P][S]
[Ti][N] [S][N][I][P][S]
T[In] [Sn][I][P][S]
T[In] [S][Ni][P][S]
T[In] [S][N][I][P][S]
T[I][N] ...
Quack
Q[U][Ac][K]
Q[U]a[C][K]
hehe
[H]e[H]e
[H]e[He]
[He][H]e
[He][He]
Stack Exchange
[S][Ta][C][K] Ex[C][H]a[N][Ge]
[S]t[Ac][K] Ex[C][H]a[N][Ge]
এটি কোড গল্ফ, তাই আমাকে আপনার সংক্ষিপ্ততম কোডটি দেখতে দিন!
Q[U][Ac][K]
এবং Q[U]a[C][K]
। ঠিক আছে?
T[I][N]
না[T][I][N]
কারণ টি উপাদান নয়। আমার প্রশ্ন (এবং সম্ভবত রাসারের) হ'ল: আমাদের কি কেবল ১ দিতে হবে? কেবলমাত্র আউটপুট যেখানে এলিমেন্ট সাবসিটিমেন্টের সর্বাধিক সংখ্যক সংখ্যা তৈরি করা হয়? ২. শুধু ন্যূনতম পরিমাণ? (হাইড্রোজেন সহ HeHe এর উত্তরটির কোনও উত্তর নেই) ৩. সমস্ত আউটপুট যেখানে ম্যাচগুলি সম্পূর্ণ নিঃশেষ হয়ে যায়? ( এক্ষেত্রেT[I][N]
পাশাপাশি বৈধওT[In]
হবে)) আমি মনে করি সঠিক ব্যাখ্যাই ৩