অর্ধ কার্ডিনাল সাইক্লিক কুইন তৈরি করুন


18

একটি অর্ধ কার্ডিনাল সাইক্লিক কুইন একটি চক্রাকার কুইন যা দুটি রাজ্যের, একটির অপরটির সাথে লম্ব।

বিধি

আপনি কোন ঘূর্ণনটি ঘড়ির কাঁটার দিকে বা ঘড়ির কাঁটার বিপরীতে প্রয়োগ করতে চান তা স্থির করতে পারেন।

একবার ঘোরার পরে, অবস্থান সংরক্ষণের জন্য আপনার কোডের যে কোনও ফাঁক ফাঁকা স্থান দিয়ে প্রতিস্থাপন করা উচিত।

আপনার প্রোগ্রাম অবশ্যই একটি quine এর সম্প্রদায় সংজ্ঞা সন্তুষ্ট করতে হবে ।

এটি তাই প্রতিটি ভাষার সংক্ষিপ্ততম প্রোগ্রামটি জয়ী হয়। আপনার প্রথম প্রোগ্রামটি আপনার বাইট গণনার জন্য ব্যবহৃত হয়।

স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ।

উদাহরণ

যদি আপনার প্রোগ্রামটি হয়:

$_='print';eval

তারপরে পরবর্তী পুনরাবৃত্তি অবশ্যই হয়:

$
_
=
'
p
r
i
n
t
'
;
e
v
a
l

অথবা

l
a
v
e
;
'
t
n
i
r
p
'
=
_
$

যার মূল প্রোগ্রামটি আউটপুট করতে হবে:

$_='print';eval

যদি আপনার প্রোগ্রামটি হয়:

;$_=';
;$_=';
print

তারপরে পরবর্তী পুনরাবৃত্তি অবশ্যই হয়:

;;
''t
==n
__i
$$r
;;p

বা:

p;;
r$$
i__
n==
t''
 ;;

যার মূল প্রোগ্রামটি আউটপুট করতে হবে:

;$_=';
;$_=';
print



1
@ এললান না, অন্য একজন মিউচুয়াল কুইন চাইবেন না।
মার্টিন এন্ডার

1
এখনও অবধি উত্তরগুলি দেখে আমি মনে করি আসল চ্যালেঞ্জটি হ'ল অ্যান্টলকওয়াইজ এক বা একাধিক লাইনযুক্ত কুইন (যাতে ঘূর্ণনটি স্থানান্তর থেকে পৃথক বা কেবল নিউলাইনগুলি সন্নিবেশ করা)।
ওয়েজুন চাউ

1
আপনি দুটি প্রোগ্রাম আলাদা হওয়া প্রয়োজন হতে পারে। অন্যথায়, ঘূর্ণন প্রতিসাম্য রয়েছে এমন কুইনগুলি বৈধ উত্তর হতে পারে।
মার্টিন ইন্ডার

উত্তর:


14

সিজেম , 19 17 15 বাইট

{s"_~"+N*""-}_~

এটি অনলাইন চেষ্টা করুন! ঘোরানোর চেষ্টা করুন।

ব্যাখ্যা

{s"_~"+  e# Standard quine framework. Puts a string representation of the entire
         e# program on the stack.
  N*     e# Riffle linefeeds into the string, which is effectively a clockwise
         e# rotation by 90°.
  ""-    e# Does nothing.
}_~

ঘোরানো কোডটিতে, আমরা সর্বত্র লাইনফিড পেয়েছি:

{
s
"
_
~
"
+
N
*
"
"
-
}
_
~

লিন যেমন ডোমের আগের কোয়েন চ্যালেঞ্জটি সন্নিবেশ করেছেন লাইনফিডগুলি আসলে বৈধ কুইন গঠন করে, কারণ ব্লকের অভ্যন্তরে লাইনফিডগুলি যেভাবেই কেবল অক্ষরে অক্ষরে অক্ষরে অক্ষরে অক্ষরে রাখা থাকবে এবং "_~"শেষের দিকে এই দুটি চরিত্রটি দেখাতে স্ট্রিংয়ে লাইনফিড থাকবে তাদের নিজস্ব লাইন সুতরাং {s"_~"+...}_~(লাইনফিড সহ) এখনও একটি বৈধ কুইন কাঠামো (যদিও স্ট্রিং শেষে একটি অতিরিক্ত লাইনফিড থাকবে)। N*এখন সেই স্ট্রিংয়ের মধ্যে আরও বেশি লাইনফিড সন্নিবেশ করানো হয়েছে, তবে আমরা সত্যিই যত্ন নিই না: কারণ এখন ""-সেই স্ট্রিংয়ের ভিতরে একটি লাইনফিড রয়েছে যাতে এটি প্রকৃতপক্ষে প্রোগ্রামের উপস্থাপনা থেকে সমস্ত লাইনফিড সরিয়ে দেয়। সুতরাং আমরা ঘূর্ণনটি পূর্বাবস্থায় ফিরিয়ে আবার কোডের অনুভূমিক ফর্মটি দিয়ে শেষ করি।



5

> <> , 22 বাইট

 "2+}>oao#ov*48}}*d3'v

এটি অনলাইন চেষ্টা করুন!

ঘড়ির কাঁটার বিপরীতে ঘোরানো:

v
'
3
d
*
}
}
8
4
*
v
o
#
o
a
o
>
}
+
2
"

এটি অনলাইন চেষ্টা করুন!

প্রথমটি নতুন লাইনগুলি ছেদ করে বিপরীতে লাইনটি মুদ্রণ করে এবং দ্বিতীয়টি নিউলাইনগুলি ছাড়াই বিপরীতে মুদ্রণ করে।


এটা খুব চালাক!
এওসোলিং ফল

হার্ড মোডে এটি এগিয়ে যাওয়া ভাল!
ডম হেস্টিংস

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.