0 থেকে 9 সংখ্যার জন্য এখানে 5 বাই 7 ফন্টের পিক্সिलेটেড:
.███.
█...█
█...█
█...█
█...█
█...█
.███.
..█..
███..
..█..
..█..
..█..
..█..
█████
.███.
█...█
....█
...█.
..█..
.█...
█████
.███.
█...█
....█
..██.
....█
█...█
.███.
█..█.
█..█.
█..█.
█████
...█.
...█.
...█.
█████
█....
█....
.███.
....█
█...█
.███.
.███.
█...█
█....
████.
█...█
█...█
.███.
█████
....█
....█
...█.
...█.
..█..
..█..
.███.
█...█
█...█
.███.
█...█
█...█
.███.
.███.
█...█
█...█
.████
....█
█...█
.███.
(এই হরফ এবং এই পৃষ্ঠা সম্ভবত অনেক সুন্দর দেখতে পাবেন যদি আপনি আপনার ব্রাউজারের কনসোলে বা URL বারে দ্বারা পূর্বে সমাধান এই JavaScipt কোড চালানো হবে javascript:
: $('#question pre,.answer pre').css('line-height',1)
।)
দুটি সমান আকারের আয়তক্ষেত্রাকার ব্লক লিখুন, একটি .
উপরের ফন্টে ফাঁকা স্থানগুলি ( ) উপস্থাপন করুন এবং একটি ভরাট স্থানের প্রতিনিধিত্ব করুন ( █
)।
এই দুটি পাঠ্য ব্লক যখন উপরের অঙ্কগুলির একটি হিসাবে একই 5 × 7 প্যাটার্নে সাজানো হয়, তারপরে ফলস্বরূপ বৃহত পাঠ্য ব্লকটি এমন একটি প্রোগ্রাম হওয়া উচিত যা সেই অঙ্কটি স্টাডাউটে মুদ্রণ করে। এটি সমস্ত 10 সংখ্যার জন্য কাজ করা উচিত।
উদাহরণস্বরূপ, যদি আপনার .
পাঠ্য ব্লকটি ছিল
---
'''
এবং আপনার █
পাঠ্য ব্লক ছিল
ABC
123
তারপর প্রোগ্রাম
---ABCABCABC---
'''123123123'''
ABC---------ABC
123'''''''''123
ABC---------ABC
123'''''''''123
ABC---------ABC
123'''''''''123
ABC---------ABC
123'''''''''123
ABC---------ABC
123'''''''''123
---ABCABCABC---
'''123123123'''
আউটপুট করা উচিত 0
। একইভাবে, প্রোগ্রাম
------ABC------
''''''123''''''
ABCABCABC------
123123123''''''
------ABC------
''''''123''''''
------ABC------
''''''123''''''
------ABC------
''''''123''''''
------ABC------
''''''123''''''
ABCABCABCABCABC
123123123123123
আউটপুট করা উচিত 1
, এবং তাই জন্য প্রোগ্রাম পর্যন্ত 9
।
আপনি ডিজিটাল আকারের প্রোগ্রামগুলি তৈরি করতে এই স্ট্যাক স্নিপেটটি ব্যবহার করতে পারেন:
<style>textarea{font-family:monospace;}</style><script>function go(){var t=parseInt(document.getElementById("digit").value[0]);if(isNaN(t))return void alert("Invalid digit.");for(var e=document.getElementById("empty").value.split("\n"),n=document.getElementById("filled").value.split("\n"),l=[],o=0;o<7*e.length;o++){l[o]="";for(var d=0;5>d;d++)l[o]+=font[t][Math.floor(o/e.length)][d]?n[o%n.length]:e[o%e.length]}document.getElementById("output").value=l.join("\n")}font=[[[0,1,1,1,0],[1,0,0,0,1],[1,0,0,0,1],[1,0,0,0,1],[1,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]],[[0,0,1,0,0],[1,1,1,0,0],[0,0,1,0,0],[0,0,1,0,0],[0,0,1,0,0],[0,0,1,0,0],[1,1,1,1,1]],[[0,1,1,1,0],[1,0,0,0,1],[0,0,0,0,1],[0,0,0,1,0],[0,0,1,0,0],[0,1,0,0,0],[1,1,1,1,1]],[[0,1,1,1,0],[1,0,0,0,1],[0,0,0,0,1],[0,0,1,1,0],[0,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]],[[1,0,0,1,0],[1,0,0,1,0],[1,0,0,1,0],[1,1,1,1,1],[0,0,0,1,0],[0,0,0,1,0],[0,0,0,1,0]],[[1,1,1,1,1],[1,0,0,0,0],[1,0,0,0,0],[0,1,1,1,0],[0,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]],[[0,1,1,1,0],[1,0,0,0,1],[1,0,0,0,0],[1,1,1,1,0],[1,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]],[[1,1,1,1,1],[0,0,0,0,1],[0,0,0,0,1],[0,0,0,1,0],[0,0,0,1,0],[0,0,1,0,0],[0,0,1,0,0]],[[0,1,1,1,0],[1,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0],[1,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]],[[0,1,1,1,0],[1,0,0,0,1],[1,0,0,0,1],[0,1,1,1,1],[0,0,0,0,1],[1,0,0,0,1],[0,1,1,1,0]]]</script><textarea id='empty' rows='8' cols='32' placeholder='empty space text block...'></textarea><textarea id='filled' rows='8' cols='32' placeholder='filled space text block...'></textarea><br>Digit <input id='digit' type='text' value='0'> <button type='button' onclick='go()'>Generate</button><br><br><textarea id='output' rows='16' cols='64' placeholder='output...' style='background-color: #eee;' readonly></textarea>
বিস্তারিত
- 10 টি বড় টেক্সট ব্লক প্রোগ্রামের কোনওটিরই ইনপুট দরকার নেই। কেবলমাত্র একক অঙ্কের সাথে একটি alচ্ছিক পেছনের নতুন লাইনের আউটপুট। Stdout বা একটি অনুরূপ বিকল্প আউটপুট।
- প্রোগ্রামগুলির কোনওই তাদের নিজস্ব উত্স কোডটি পড়তে বা অ্যাক্সেস করতে পারে না। একটি কঠোর মত এই আচরণ quine চ্যালেঞ্জ।
- পাঠ্য ব্লকগুলি অভিন্ন নাও হতে পারে এবং ননজারো মাত্রা থাকতে হবে।
- পাঠ্য ব্লকগুলিতে লাইন টার্মিনেটর ব্যতীত অন্য কোনও অক্ষর থাকতে পারে ।
- 10 টি প্রোগ্রাম অবশ্যই একই ভাষায় লিখিত পূর্ণাঙ্গ প্রোগ্রাম হতে হবে, সেগুলি আরপিএল স্নিপেট নয়। আপনি allyচ্ছিকভাবে তাদের সবার বা একটিওর জন্য একটি নতুন ট্রেলিং যোগ করতে পারেন।
স্কোরিং
আপনার স্কোরটি আপনার পাঠ্য ব্লকগুলির মধ্যে একটির (প্রশস্ত বার উচ্চতা) height (এগুলি একই আকারের তাই উভয় ব্লক গণনা করার কোনও অর্থ নেই)) উদাহরণটির ক্ষেত্রফল 6 এর স্কোরের জন্য 3 বাই 2।
সর্বনিম্ন স্কোর জয়। সম্পর্কের ক্ষেত্রে, সর্বাধিক ভোট দেওয়া উত্তর জিততে পারে।
text blocks may not be identical
সত্যি? আমি দেখতে চাই যে কেউ এই নিয়মটি ভেঙে দুটি অভিন্ন কোডব্লক দিয়ে জাদুকরভাবে বিভিন্ন অঙ্ক ফিরিয়ে দেয়, যখন প্রতিটি সংখ্যা ঠিক একই কোড হয় ^^
var t=parseInt(document.getElementById("digit").value[0]);if(isNaN(t))return void alert("Invalid digit.");
হিসাবে লিখিত হতে পারেvar t=document.getElementById("digit").value[0]/1;if(t!=t)return void alert("Invalid digit.");
, যা একই তবে খাটো। এতে আরও কয়েকটি জিনিস আপনি উন্নত করতে পারেন তবে এটি দুর্দান্ত দেখাচ্ছে!