ভূমিকা
অ্যালিস মার্টিন ইন্ডারের একটি 2-ডি ভাষা যার দুটি পৃথক এক্সিকিউশন মোড, কার্ডিনাল এবং অর্ডিনাল । নির্দেশ পয়েন্টারটি যখন একটি আয়না দিয়ে যায় (হয় /বা হয় \), এটি একটি মোড থেকে অন্য মোডে স্যুইচ করে।
এই চ্যালেঞ্জের মধ্যে আমরা অর্ডিনাল মোডে ফোকাস করব , যেখানে কমান্ডগুলি স্ট্রিংগুলিতে কাজ করে এবং নির্দেশ পয়েন্টারটি ত্রিভুজভাবে সরানো হয়, কোডের প্রান্তগুলির সাথে বিচ্ছিন্ন হয়ে।
কেবলমাত্র অর্ডিনাল মোডে পরিচালিত সাধারণ প্রোগ্রামগুলি নীচের উদাহরণের মতো বেশ কমপ্যাক্ট স্টাইলে লেখা যেতে পারে:
/fbd/
@aec\
এখানে আইপি প্রথম সেল পূর্ব যাওয়া থেকে অঙ্কবাচক মোডে আরম্ভ করা হয়, প্রথম আয়না মাধ্যমে প্রেরণ করা এবং আড়াআড়ি চলন্ত শুরু প্রাণচঞ্চল, কমান্ড নির্বাহ a, bএবং c। তখনই উত্তর-পূর্ব আয়না যা এটি অন্যান্য আয়না প্রতি দক্ষিণ যান এবং তারপর, পশ্চিম দিকে ফিরে প্রাণচঞ্চল কমান্ড সম্মুখীন শুরু তোলে encounters d, e, f, এবং পরিশেষে @, প্রোগ্রাম বন্ধ পারে।
এই ধরণের কাঠামোটি বেশ কমপ্যাক্ট, তবে এটি রচনা এবং রক্ষণাবেক্ষণ করা সহজ নয় (একটি একক কমান্ড যুক্ত করা আমাদের বেশিরভাগ কোড পুনরায় অর্ডার করতে বাধ্য করতে পারে!), তাই আমি চাই আপনি বিন্যাসে আমাকে সাহায্য করুন।
কাজটি
কমান্ডের অনুক্রম দেওয়া, যেখানে প্রতিটি কমান্ড একটি একক মুদ্রণযোগ্য ASCII অক্ষর, সেগুলিকে দুটি লাইনে পুনরায় অর্ডার করুন যাতে ক্রমের প্রথমার্ধটি দ্বিতীয় লাইনের প্রথম অক্ষর থেকে শুরু করে পড়তে পারে এবং তারপরে সর্বদা ডানদিকে তির্যকভাবে সরানো যায়, যখন দ্বিতীয়ার্ধটি বাকী অক্ষরগুলি ডান থেকে বামে নিয়ে পড়া যায়। আয়না এবং সমাপ্তির প্রতীক সম্পর্কে চিন্তা করবেন না, আমি সেগুলি নিজেই যুক্ত করব।
সুতরাং, উদাহরণস্বরূপ, প্রদত্ত ইনপুট abcdefআপনার আউটপুট করা উচিত
fbd
aec
যদি ইনপুটটি বিজোড় দৈর্ঘ্যের হয় তবে আপনার যে কোনও জায়গায় একক স্থান (যা এলিসের একটি নূপ) যুক্ত করা উচিত, যতক্ষণ না কমান্ডগুলির ক্রমটি একই রকম থাকে। আপনি একটি অক্ষর দ্বারা দৈর্ঘ্য পৃথক দুটি লাইন আউটপুট চয়ন করতে পারেন, এই ক্ষেত্রে সংক্ষিপ্ত এক একটি শেষে একক স্থান হিসাবে বিবেচিত হয়।
বিধি
এই কোড-গলফ, সংক্ষিপ্ত উত্তর, বাইটে, জেতা!
- আপনি যে কোনও ডিফল্ট ইনপুট / আউটপুট পদ্ধতির মাধ্যমে ইনপুট / আউটপুট দিতে পারেন
- ইনপুট মুদ্রণযোগ্য ASCII অক্ষরের একক লাইন নিয়ে গঠিত
- আউটপুটে একটি একক পেছনের নতুন লাইন অনুমোদিত
- অ্যালিস প্রোগ্রাম হিসাবে চালিত হওয়ার সময় আপনার প্রোগ্রামের কিছু আউটপুটগুলির একটি সম্পূর্ণ সঠিক আচরণ নাও হতে পারে (উদাঃ যদি প্যাডিং স্পেসটি কোনও স্ট্রিংয়ের ভিতরে sertedোকানো হয়)) এই পরিস্থিতিতে আপনার নিজেকে উদ্বেগের দরকার নেই
- স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ
পরীক্ষার মামলা
--Input
abcdef
--Output
fbd
aec
--Input
123
--Output
2
13
OR
31
2
OR
3
12
OR
32
1
--Input
O
--Output
O
OR
O
--Input
"Hello, World!"o
--Output
oH!lloo
""edlr,W
--Input
i.szR.szno
--Output
o.zz.
inssR
--Input
" ^^} .~[}.~~[}{~~{}[^^^^.""!}"r.h~;a*y'~i.*So
--Output
o *^i}'.*[;.h~r}}~"{.[^
"S .^~ y~a}~~.["{!~"}^^^
(Odd length, your solution may be different)