<v":1200----"
S>@5dov>~r@@}r5
1&}o:&<^!?:-
এখানে চেষ্টা করুন!
আমার মনে হচ্ছে আমার এই সংক্ষিপ্তটি তৈরি করতে সক্ষম হওয়া উচিত, চেষ্টা করার জন্য আমার কয়েকটি ধারণা রয়েছে ... মূলত এটি একটি স্ট্যাক করে :1200----
। এটি পৃথক করে :
এবং স্ট্যাকটি ফ্লিপ করে, :
উভয়ের মাঝখানে সন্নিবেশ করে----
বা 1200
(স্ট্যাকের শেষে যেটির উপর নির্ভর করে)।
আমার এটিও নোট করা উচিত যে এটি কেবলমাত্র *> <> নির্দেশ ব্যবহার করে S
(ঘুম), অন্যথায় এটি একটি যথাযথ> <> প্রোগ্রাম।
আপডেট: স্থানান্তরিত করে 1 বাইট সংরক্ষণ করা হয়েছে :
একটি রেজিস্টার দিয়ে সুরক্ষার পরিবর্তে ডানদিকে ।
ব্যাখ্যা
Initialisation
<v":1200----"
এখানে আমরা স্ট্যাকটি তৈরি করি যা আমরা প্রোগ্রামটির জীবনের জন্য ব্যবহার করব।
< move the IP left
":1200----" push ":1200----" to the stack
v move the IP down into "output time"
আউটপুট সময়
>@5dov
1&}o:&<^!?:-
এটি সেই বিভাগ যেখানে সময়টি আসলে আউটপুট হয়। প্রথম 5 টি স্ট্যাকের দিকে ঠেলে দেওয়া হয়েছে যাতে নীচের লুপটি 5 বার চালাতে জানে।
Initialisation:
>@5dov
> move the IP right
@ move the ":" back two spaces in the stack
5 push 5 to the stack (let's call this `i`)
do output carriage return
v move IP down into "loop"
Loop:
1&}o:&<^!?:-
< move the IP left
& place i onto the register
}o: output a character and shift the stack left
& place i back onto the stack
1 - decrement i by 1
^!?: if i == 0, exit to "recover and swap"
পুনরুদ্ধার এবং অদলবদল করুন
S >~r@@}r5
:
আউটপুট পরে এটির অবস্থান থেকে আমরা এখানে পুনরুদ্ধার করি এবং আমরা একটি বিপরীত স্ট্যাক দিয়ে শেষ করি। এটি প্রকৃতপক্ষে সুন্দরভাবে "আউটপুট টাইমে" প্রস্থান করে, যার ফলে অসীম লুপ হয়।
> move the IP right
~ remove trailing i from stack
r@@ reverse the stack and move ":" to the front
}r reverse the stack again, keeping ":" on the front
S 5 sleep for 500ms
45 বাইট সমাধান
<v[5"12:00"1
d/S5
o/!?l
v>]?v
00.>0"--:--"5[
এখানে চেষ্টা করুন!
এটিও মূলত একটি> <> প্রোগ্রাম।
আমি সত্যিই ভেবেছিলাম যে এই পদ্ধতির সাহায্যে এটি কিছু বাইট সংরক্ষণ করতে সক্ষম হবে। এটি বেশ সহজভাবে আউটপুটস 12:00
, তারপর --:--
। আমি আউটপুট রুটিনটি পুনরায় ব্যবহার করে বাইটগুলি সংরক্ষণ করি o/!?l
(এমনকি আমি সেই আয়নাটিকে প্রবেশ এবং প্রস্থান উভয় হিসাবে পুনরায় ব্যবহার করি)। আমি স্টেট সংরক্ষণ করতে একাধিক স্ট্যাক ব্যবহার করি (আউটপুট 12
বা থাকে --
) এবং আমার কোন রাজ্যের সাথে আউটপুট করা উচিত তা নির্বাচন করি v>]?v
।
ব্যাখ্যা শীঘ্রই আসছে! (1/2)