জে, 126 124 121 119 116 115 113 105 116 115 112 টি অক্ষর
'|'s":(' 's[:,.(_6[\' || (__)'){~(,-.))&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1[(s=:[,.~,.)9!:7'\=/<=>/=\|='
কীবোর্ড থেকে ইনপুট নেয়। উদাহরণ:
'|'s":(' 's[:,.(_6[\' || (__)'){~(,-.))&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1[(s=:[,.~,.)9!:7'\=/<=>/=\|='
6302715408
|\==============================================================/|
|| (__) (__) (__) (__) (__) (__) (__) (__) (__) (__) ||
|| || (__) (__) (__) || (__) || (__) (__) || ||
|| || || || || || || || || || || ||
|| (__) || || || (__) || (__) || || (__) ||
|<==============================================================>|
|| (__) (__) || (__) (__) (__) || (__) || (__) ||
|| || (__) || (__) (__) || || (__) || (__) ||
|| || (__) || || || || || (__) || (__) ||
|| || || || || || || || (__) || || ||
|| || || || || || || || || || || ||
|| || || (__) || || || (__) || (__) || ||
|| (__) || (__) || || (__) (__) || (__) || ||
|| (__) || (__) (__) (__) (__) (__) || (__) || ||
|| (__) (__) (__) (__) (__) (__) (__) || (__) (__) ||
|| (__) (__) (__) (__) (__) (__) (__) (__) (__) (__) ||
|/==============================================================\|
এখানে মুখ্য কৌশলটি হ'ল জে'র বক্সিং ব্যবহার করা চরিত্রগুলির নতুন সংজ্ঞা দিয়ে অপব্যবহার করা। এটা একটা ব্যবহার বিশ্বব্যাপী প্যারামিটার - 9!:7
- এই কাজ করতে। আরও golfing জন্য রুম আছে হতে পারে, কিন্তু সৎ আমি শুধু কিছু পরিশ্রমী যে জন্য ক্ষতিপূরণ করা উচিত পেতে আনন্দিত ছিল হতে এই প্রশ্ন আমার শেষ চেষ্টা ।
'গাজ এটি করেছে' :-) বলতে পর্যাপ্ত অক্ষর রেখে একটি টুইটের সাথে ফিট করে।
সম্পাদনা করুন: 3 টি অক্ষরের সঞ্চয় জেসি মিলিকানের উত্তর 2 6$' || (__)'
থেকে নেওয়া হয়েছে ।
আরও সম্পাদনা: হারিয়ে যাওয়া 11 টি অক্ষর যে দু'পাশে অতিরিক্ত স্পেস যুক্ত করেছে যা আমি লক্ষ্য করি নি উপস্থিত ছিল না।
ব্যাখ্যা:
কোডটি মূলত তিনটি বিভাগে রয়েছে:
1) সেটআপ
[(s=:[,.~,.)9!:7'\=/<=>/=\|='
এটি নিজেই দুটি অংশে।
9!:7'\=/<=>/=\|='
বাক্সগুলি প্রদর্শনের জন্য জে ব্যবহার করবে এমন অক্ষরগুলির নতুন সংজ্ঞা দেয়। জে'র বক্সিংটি সাধারণত দেখতে এরকম লাগে:
2 2$<"0[1 2 3 4
┌─┬─┐
│1│2│
├─┼─┤
│3│4│
└─┴─┘
তবে নতুন সংজ্ঞা দেওয়ার পরে এটি দেখতে এরকম দেখাচ্ছে:
2 2$<"0[1 2 3 4
\===/
|1|2|
<===>
|3|4|
/===\
(s=:[,.~,.)
একটি ক্রিয়া সংজ্ঞা দেয় যা আমি পরে কয়েকবার ব্যবহার করব be এটি ঘোষণার জন্য সেরা জায়গা হিসাবে দেখা যাচ্ছে। এটি বামে একটি অক্ষর এবং ডানদিকে অক্ষরের একটি অ্যারে লাগে এবং চরিত্রের মধ্যে অ্যারেটি স্যান্ডউইচ করে। উদাহরণ স্বরূপ:
3 5$'abcdefghijklmno'
abcde
fghij
klmno
'-' s 3 5$'abcdefghijklmno'
-abcde-
-fghij-
-klmno-
ফাইনালটি [
কেবলমাত্র পরবর্তী অংশ থেকে সেটআপটি পৃথক করে।
2) ইনপুট এবং প্রতিনিধিত্ব
,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
".,.1!:1[1
কীবোর্ড থেকে ইনপুট নেয় এবং এটিকে পৃথক অঙ্কে পৃথক করে:
".,.1!:1[1
314159
3 1 4 1 5 9
((i.5)</5|])
অ্যাবাকাসের নীচের অংশের একটি শূন্য এবং উপস্থাপনা তৈরি করে:
((i.5)</5|]) 3 1 4 1 5 9
1 1 1 1 0 1
1 0 1 0 0 1
1 0 1 0 0 1
0 0 1 0 0 1
0 0 0 0 0 0
|:@(1,.<&5)
অ্যাবাকাসের শীর্ষ অংশের একটি শূন্য এবং উপস্থাপনা তৈরি করে:
|:@(1,.<&5) 3 1 4 1 5 9
1 1 1 1 1 1
1 1 1 1 0 0
এই দুটি অংশ একসাথে বাক্সযুক্ত রয়েছে ;
:
(|:@(1,.<&5);((i.5)</5|])) 3 1 4 1 5 9
\=======================/
|1 1 1 1 1 1|1 1 1 1 0 1|
|1 1 1 1 0 0|1 0 1 0 0 1|
| |1 0 1 0 0 1|
| |0 0 1 0 0 1|
| |0 0 0 0 0 0|
/=======================\
তারপরে বাক্সগুলি একে অপরের উপরের অংশে অ্যাবাকাসের ভিত্তি তৈরি করে দেওয়া হয়:
,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
314159
\===========/
|1 1 1 1 1 1|
|1 1 1 1 0 0|
<===========>
|1 1 1 1 0 1|
|1 0 1 0 0 1|
|1 0 1 0 0 1|
|0 0 1 0 0 1|
|0 0 0 0 0 0|
/===========\
3) আউটপুট
'|'s":(' 's[:,.(_6[\' || (__)'){~(,-.))&.>
&.>
তারপরে যা যা ঘটে তা উভয় বাক্সে ঘুরে দেখাবে।
(,-.)
এটি এমন একটি হুক যা ইনপুটটিকে অস্বীকার করবে এবং তারপরে এটি মূলটির শেষে যুক্ত করবে:
2 5$1 0 1 0 1
1 0 1 0 1
1 0 1 0 1
(,-.) 2 5$1 0 1 0 1
1 0 1 0 1
1 0 1 0 1
0 1 0 1 0
0 1 0 1 0
এটি সত্য উপস্থাপনের অংশ, তবে গল্ফিংয়ের উদ্দেশ্যে এই বিভাগে এটি থাকা ভাল। পূর্ববর্তী ইনপুটটিতে প্রয়োগ করা হয়েছে:
(,-.)&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
314159
\===========/
|1 1 1 1 1 1|
|1 1 1 1 0 0|
|0 0 0 0 0 0|
|0 0 0 0 1 1|
<===========>
|1 1 1 1 0 1|
|1 0 1 0 0 1|
|1 0 1 0 0 1|
|0 0 1 0 0 1|
|0 0 0 0 0 0|
|0 0 0 0 1 0|
|0 1 0 1 1 0|
|0 1 0 1 1 0|
|1 1 0 1 1 0|
|1 1 1 1 1 1|
/===========\
[:,.(_6[\' || (__)'){~
জিরো এবং সেগুলি এখন পুঁতির প্রতিনিধিত্ব করতে একটি স্ট্রিং বা একটির অনুপস্থিতি নির্বাচন করতে ব্যবহৃত হয়:
([:,.(_6[\' || (__)'){~(,-.))&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
314159
\====================================/
| (__) (__) (__) (__) (__) (__) |
| (__) (__) (__) (__) || || |
| || || || || || || |
| || || || || (__) (__) |
<====================================>
| (__) (__) (__) (__) || (__) |
| (__) || (__) || || (__) |
| (__) || (__) || || (__) |
| || || (__) || || (__) |
| || || || || || || |
| || || || || (__) || |
| || (__) || (__) (__) || |
| || (__) || (__) (__) || |
| (__) (__) || (__) (__) || |
| (__) (__) (__) (__) (__) (__) |
/====================================\
তবে এখন, হাওয়ার্ড যেমন আমাকে ইঙ্গিত করেছেন, পুঁতির দুপাশে একটি জায়গা ছোট। সুতরাং আমরা s
স্পেসের দুটি কলামের মধ্যে প্রতিটি বাক্সের বিষয়বস্তু স্যান্ডউইচ করতে পূর্বনির্ধারিত ক্রিয়াটি ব্যবহার করি :
(' 's[:,.(_6[\' || (__)'){~(,-.))&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
314159
\======================================/
| (__) (__) (__) (__) (__) (__) |
| (__) (__) (__) (__) || || |
| || || || || || || |
| || || || || (__) (__) |
<======================================>
| (__) (__) (__) (__) || (__) |
| (__) || (__) || || (__) |
| (__) || (__) || || (__) |
| || || (__) || || (__) |
| || || || || || || |
| || || || || (__) || |
| || (__) || (__) (__) || |
| || (__) || (__) (__) || |
| (__) (__) || (__) (__) || |
| (__) (__) (__) (__) (__) (__) |
/======================================\
এটি সম্পন্ন করার পরে, বাকিটি হ'ল এটি একটি স্ট্রিংয়ে রূপান্তর করা ":
যাতে আমরা এটি দুটি কলামের মধ্যে স্যান্ডউইচ করতে পারি |
:
'|'s":(' 's[:,.(_6[\' || (__)'){~(,-.))&.>,.(|:@(1,.<&5);((i.5)</5|]))".,.1!:1[1
314159
|\======================================/|
|| (__) (__) (__) (__) (__) (__) ||
|| (__) (__) (__) (__) || || ||
|| || || || || || || ||
|| || || || || (__) (__) ||
|<======================================>|
|| (__) (__) (__) (__) || (__) ||
|| (__) || (__) || || (__) ||
|| (__) || (__) || || (__) ||
|| || || (__) || || (__) ||
|| || || || || || || ||
|| || || || || (__) || ||
|| || (__) || (__) (__) || ||
|| || (__) || (__) (__) || ||
|| (__) (__) || (__) (__) || ||
|| (__) (__) (__) (__) (__) (__) ||
|/======================================\|