এই চ্যালেঞ্জটি '+' অক্ষর ব্যবহার করে


28

আপনার টাস্ক: একটি নম্বর দেওয়া হয়েছে n, একটি '+' চিহ্ন তৈরি করুন যা nএর কেন্দ্র থেকে দূরে অক্ষর। এটি যদি বিভ্রান্তিকর হয় তবে পরীক্ষার কেসগুলি পরীক্ষা করে দেখুন।

ইনপুট মানক পদ্ধতি: আউটপুট অবশ্যই একটি স্ট্রিং বা মুদ্রিত হতে হবে। স্ট্যান্ডার্ড লুফোলস প্রযোজ্য।

Input: 1
Output: +           ] 1 away from center `+`.

Input: 2
Output:  +          ] 2 away from center `+`.
        +++         ] 1 away from center `+`.  
         +

Input: 3
Output:   +         ] 3 away from center `+`.
          +
        +++++
          +
          +

এটি , তাই সংক্ষিপ্ততম কোড জয়!


আমি ধরে নিলাম প্রতিটি লাইনের পিছনে ফাঁকা স্থানগুলিকে অনুমতি দেওয়া হয়েছে যাতে ফলাফলটি বর্গক্ষেত্র হয়, তাই না?
লুইস মেন্ডো

@ লুইস মেন্ডো হ্যাঁ, এটা ঠিক আছে।
কমরেড স্পার্কলপনি


3
"এর 'কেন্দ্র থেকে দূরে থাকা একটি' + 'চিহ্ন তৈরি করুন" - আমি এই অংশটি বুঝতে পারি না। আপনি কোন কেন্দ্রের কথা উল্লেখ করছেন? কীভাবে কোনও কিছু নিজের কাছে উদীয় হতে পারে? পরিষ্কার করে বলো.
ওয়াসনাম

6
কেন্দ্রটি যদি নিজেকে থেকে 0 দূরে থাকত তবে এটি অনেক কম বিভ্রান্তি হত।
মনমোহন মনিকা বন্ধ করুন

উত্তর:


45

22
এমনকি এই ভাষা কি?
ডিজেএমসিএমহেম

@ ডিজেএমসিএমহেম মূলত আপনি এর সাথে কচ্ছপ গ্রাফিক্স এএসসিআইআই আর্ট করতে পারেন। এটির বিভিন্ন ধরণের এএসসিআইআই আকার (যেমন P+= ক্রস) উপস্থাপনের জন্য প্রচুর সুবিধাজনক বিল্টিন রয়েছে ।
ফারগুসক

এগুলি কি মাল্টিবাইট চরিত্র নয়?
পেটাহ

3
@ পেটা চারকোল একটি কাস্টম কোডপেজ ব্যবহার করে ।
ASCII-

@fergusq আপনি চারকোলটি টার্টলিডের সাথে মিশ্রিত করতে পারেন : পি, চারকোল সত্যিই কোনও কচ্ছপ গ্রাফিক্স ভাষা নয়
ASCII- কেবল


12

জাভাস্ক্রিপ্ট (ES6), 67 65 63 60 59 বাইট

x=>(v=(` `[r=`repeat`](--x)+`+
`)[r](x))+`+`[r](x*2)+`+
`+v;
  • 2 টি বাইট দুটি ঘটনাকে প্রতিস্থাপন করে সংরক্ষণ করা হয়েছে x-1, প্রথমটি সাথে --xএবং দ্বিতীয়টি x
  • 2 বাইট ক্রিটিক্সী লিথোসকে প্রতিস্থাপনের পরিবর্তে সংরক্ষণ "\n"করেছে `[newline]`
  • 3 টি বাইট ব্যবহারকারীর জন্য ধন্যবাদ 2428118 সংরক্ষণ করেছে , অবশেষে repeatআকারটি হ্রাস করে এমনভাবে একটি উপকরণের নাম খুঁজে বের করতে আমাকে সহায়তা করে। ( মারি তার প্রচেষ্টার জন্য সম্মানজনক উল্লেখ সহ )
  • হারমানকে পরোক্ষভাবে 1 বাইট সংরক্ষণ করা হয়েছে।

এটি চেষ্টা করুন

f=
x=>(v=(` `[r=`repeat`](--x)+`+
`)[r](x))+`+`[r](x*2)+`+
`+v;
oninput=_=>o.innerText=f(+i.value)
o.innerText=f(i.value=3)
<input id=i min=1 type=number><pre id=o>


1
আমি পুরোপুরি নিশ্চিত নই, তবে আমি মনে করি আপনি "\n"দুটি ব্যাকটিক এবং তাদের মধ্যে একটি আক্ষরিক নতুন
লাইনটি

ধন্যবাদ, @ ক্রিটিক্সিলিথোস; কেন আমি তাড়াতাড়ি নিজেকে ভেবে দেখিনি জানি না।
শেগি

1
দেখে মনে হচ্ছে আপনি সম্ভবত পুনরাবৃত্তি এলিট করে একটি বাইট সংরক্ষণ করতে পারেন, যেমন a='repeat',v=.....এবং` `[a]
মেরি

ধন্যবাদ, @ মেরি; আমি আলিয়াস করার চেষ্টা repeat()করেছি কিন্তু আমার প্রথম কয়েকটি চেষ্টা 2 বা 3 বাইট বড় এলো তাই আমি এটিকে পরিত্যাগ করলাম! আমি যখন আবার একটি কম্পিউটারের সামনে ফিরে আসি তখন আমি এটিকে আবার দেখব।
শেগি

2
x=>(v=(` `[r='repeat'](--x)+`+<newline>`)[r](x))+`+`[r](x*2+1)+`<newline>`+v
ব্যবহারকারী 2428118

9

এমএটিএল , 11 বাইট

tZv=&+g43*c

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

উদাহরণ সহ ব্যাখ্যা

বিবেচনা করুন n = 3

t     % Implicitly input n. Duplicate
      % STACK: 3, 3
Zv    % Symmetric range
      % STACK: 3, [1 2 3 2 1]
=     % Equal, element-wise
      % STACK: [0 0 1 0 0]
&+    % All pair-wise additions. Gives a 2D array
      % STACK: [0 0 1 0 0;
                0 0 1 0 0;
                1 1 2 1 1;
                0 0 1 0 0;
                0 0 1 0 0]
g     % Logical: convert non-zero to one
      % STACK: [0 0 1 0 0;
                0 0 1 0 0;
                1 1 1 1 1;
                0 0 1 0 0;
                0 0 1 0 0]
43*   % Multiply by 43 (ASCII for '+'), element-wise
      % STACK: [ 0  0 43  0  0;
                 0  0 43  0  0;
                43 43 43 43 43;
                 0  0 43  0  0;
                 0  0 43  0  0]
c     % Convert to char. Char 0 is displayed as space. Implicitly display.
      % STACK: ['  +  ';
                '  +  ';
                '+++++';
                '  +  ';
                '  +  ']

8

কাঠকয়লা , 16 13 বাইট

Nα×+α←↑×+α‖O↘

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

অন্যান্য কাঠকয়লা উত্তর থেকে আলাদা পদ্ধতির ব্যবহার করে।

ব্যাখ্যা

Nα                       # Take input and store it in variable α
×+α                       # α times write a +
←                         # Go left
↑×+α                      # α times write a + upwards

এখন উপরের বাম কোণটি সম্পূর্ণ, এটি এর মতো কিছু দেখবে:

  +
  +
+++

‖O↘                      # Reflect-overlap it in a SE direction

সর্বশেষ পদক্ষেপটি এই প্রোগ্রামটির মূল চাবিকাঠি, এটি দক্ষিণ-পূর্ব দিকের (ডানদিকে এবং নীচের দিকে) প্রতিবিম্বিত করে প্লাসের বাকী অংশটি উত্পন্ন করতে প্লাসের উপরের বাম অংশটি ব্যবহার করে।


কাঠকয়ালের নিজস্ব কোড পৃষ্ঠা আছে? এই চরিত্রগুলির মধ্যে অনেকগুলি ইউটিএফ -8 এ একাধিক বাইট।
TRIG

@ টিআরজি হ্যাঁ, এটি হয় !
ক্রিটসি লিথোস

8

শেক্সপিয়ার প্রোগ্রামিং ল্যাঙ্গুয়েজ , 749 743 বাইট

N.Puck,.Page,.Ford,.Ajax,.Act I:.Scene I:.[Enter Puck and Ford]Puck:Listen to thy heart!Ford:You is the difference between a cat and I.Scene V:.[Exeunt][Enter Page and Ajax]Ajax:You is the difference between a cat and Ford.Scene X:.Page:You is the product of Puck and I.Is you as big as zero?If so,you is the sum of the sum of the sum of a big big big big big cat and a big big big cat and a big cat and a cat.If not,you big big big big big cat.Speak thy mind!Ajax:You is the sum of you and a cat.Is you as big as Ford?If not,let us return to Scene X.Page:You is the sum of a big big big cat and a big cat.Speak thy mind![Exit Page][Enter Puck]Ajax:You is the sum of you and a cat.Is you as big as Ford?If not,let us return to Scene V.[Exeunt]

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

সম্পাদনা করুন: সরকারী এসপিএল বাস্তবায়নের সাথে উত্তরটি সামঞ্জস্য করেছে - আমি এটি আগে কাজ করতে পারি না।

গল্ফড 6 বাইট কারণ দৃশ্যের সংখ্যা একটানা হতে হবে না।

ব্যাখ্যা :

এসপিএল হ'ল একটি ইসলং যা শেক্সপিয়ার নাটকের মতো দেখতে ডিজাইন করা হয়েছে। ধনাত্মক বিশেষ্যগুলির মান 1 (এখানে বিড়াল ব্যবহৃত হয়) এবং negativeণাত্মক বিশেষ্যগুলির মান -1 এর মান থাকে (কোনও কিছুই ব্যবহৃত হয় নি তবে শূকর তার মধ্যে একটি)। বিশেষণগুলি ধ্রুবককে 2 দ্বারা গুণিত করে পরিবর্তন করে।

N.

প্রথম বিন্দু পর্যন্ত সমস্ত কিছুই শিরোনাম এবং কোনও বিষয় নয়।

Puck,.                           row counter
Page,.                           column counter
Ford,.                           input
Ajax,.                           temp

অক্ষরগুলি পূর্ণসংখ্যার ভেরিয়েবল, তাদের প্রত্যেকের একটি স্ট্যাকও রয়েছে তবে আমার সেই বৈশিষ্ট্যটি ব্যবহার করার দরকার নেই।

Act I:.
Scene I:.

কাজ এবং দৃশ্যগুলি গোটো লেবেল হিসাবে ব্যবহৃত হয়

[Enter Puck and Ford]

ঠিক তখনই কার্যকর যদি দুটি অক্ষর একই সাথে মঞ্চে থাকে।

Puck:Listen to thy heart!

একটি সংখ্যা পড়ে এবং ফোর্ড এটি মনে রাখে makes

Ford:You is the difference between a cat and I.

আপনি দেখতে পাচ্ছেন এনগরিশ এসপিএলে বৈধ। এটি পকের মানকে "একটি বিড়াল এবং আমি মধ্যে আলাদা" করে তোলে। কিন্তু এটার মানে কি? catএটি একটি ইতিবাচক বিশেষ্য, তাই এটি Puck = 1 - Ford

Scene II:.
[Exeunt]

এক্সান্ট কেবল "বহির্গমন" এর বহুবচন, এবং যুক্তি ছাড়াই মঞ্চের প্রত্যেকে বেরিয়ে আসার অর্থ।

[Enter Page and Ajax]
Ajax:You is the difference between a cat and Ford.

এটি Page = 1 - Fordকিন্তু তবে এটি অন্য অভিনেতা দ্বারা কথা বলেছে তাই Iভুল হবে। যেহেতু এটি একটি লুপ, আমি কেবল এর মানটি অনুলিপি করতে পারি না Puck

Scene III:.
Page:You is the product of Puck and I.

এখনই বেশ সোজা Ajax = Puck * Page

Is you as big as zero?

"as [adj] as" ==অপারেটর।

If so,you is the sum of the sum of the sum of a big big big big big cat and a big big big cat and a big cat and a cat.

যদি আজাক্স == 0 ... "বিড়াল" 1 হয়, "বড় বিড়াল" 2 হয়, "বড় বড় বিড়াল" 4 এবং আরও কিছু হয়। সরল স্থির প্রতিস্থাপনের পরে আমরা "32 এবং 8 এবং 2 এবং 1 এর যোগফলের যোগফল" -> "40 এবং 2 এবং 1 এর যোগফল" -> "42 এবং 1 এর যোগফল পাই" -> "43", এটি + এর জন্য ASCII।

If not,you fat fat fat fat fat cat.

অন্যথায় এটি কেবল "ফ্যাট ফ্যাট ফ্যাট ফ্যাট ফ্যাট বিড়াল", তাই অ্যাজাক্স একটি স্থানের জন্য ASCII 32 এর মান পায় gets

Speak thy mind!

এটি একটি অক্ষর আউটপুট করার কমান্ড is

Ajax:
You sum you and cat.Is you as big as Ford?If not,let us return to Scene III.

এটি একটি লুপ কনস্ট্রাক্ট। "আপনি এবং আপনার বিড়ালের যোগফল" ইনক্রিমেন্ট পেজ এবং if(Page != Ford) goto Scene III। প্রোগ্রামের বাকী অংশগুলি একই উপাদানগুলি ব্যবহার করে, তাই এখানে একটি আরও পাঠযোগ্য সিউডোকোড সংস্করণ:

1 ম দৃশ্য:
    ইনপুট = [ইনপুট নম্বর];
    সারি = 0 - ইনপুট + 1;
Scene2:
    কল = 0 - ইনপুট + 1;
Scene3:
    অস্থায়ী = সারি * কল;
    যদি (অস্থায়ী == 0) {
        টেম্প = '+';
    } অন্য {
        টেম্প = '';
    }

    putchar (টেম্প);
    পৃষ্ঠা = পৃষ্ঠা + 1;
    যদি (পৃষ্ঠা! = ফোর্ড) গোটো সিন 3;
    আজাক্স = 10;
    putchar (অ্যাজাক্স);
    ছানা = ছানা + 1;
    if (পাক! = ফোর্ড) গোটো সিন 2;

" If not,let us return to Scene III." -1; চতুর্থ প্রাচীর ভেঙে: পি
জাকব


6

গণিত, 39 বাইট

Print@@@(CrossMatrix[#-1]"+"/. 0->" ")&

CrossMatrixএকটি অন্তর্নির্মিত যা স্পেসের পরিবর্তে s এবং s 1এর পরিবর্তে প্রয়োজনীয় আকারের একটি ম্যাট্রিক্স উত্পন্ন করে । যদি আমরা সেই ম্যাট্রিক্সকে আরও গুণ করি তবে সেগুলি অপরিবর্তিত রেখে (স্পষ্টত ... এবং ঠিক?) রেখে s এর সাথে প্রতিস্থাপন করবে । তারপরে আমরা ব্যবস্থাগুলি ব্যবহার করে শূন্যগুলিকে ম্যানুয়ালি প্রতিস্থাপন করি । অবশেষে, আমরা ম্যাট্রিক্সের প্রতিটি লাইন দিয়ে মুদ্রণ করি ।+0"+"1+00*x = 01*x = x/. 0->" "Print@@@(...)


1
জানেন না যে Printএরকমভাবে ব্যবহার করা যেতে পারে।
নেজেনিসিস

6

সি, 69 বাইট

খুব আকর্ষণীয় নয় ... যথাযথ চরিত্রটি মুদ্রণ করে স্কোয়ারের উপরে লুপস।

r,c;f(n){for(r=-n;++r<n;puts(""))for(c=-n;++c<n;putchar(r*c?32:43));}


6

জিএনইউ সেড , 104 99 বাইট

-5 ধন্যবাদ সেলুমার
জন্য +1 অন্তর্ভুক্ত-r

s/1//;h;:;s/(.*)1/ \12/;t;s/( *2)2(2*)/\1\n\1\2/
t;G;s/1+/&&1/;s/(.*)(\n1*)/&\n\1/;/1/!c+
y/12/++/

আনারি ইনপুট নেয়

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

s/1//                    # Subtract 1 from input
h                        # Hold onto input
:                        # Start loop
s/(.*)1/ \12/            #   Remove a 1, prepend a space, and append a 2
t                        # Loop until all 1s are 2s
                         # Start Loop (uses the previous label)
s/( *2)2(2*)/\1\n\1\2/   #   Shift all but the first 2 from the last line to a new line 
                         #   E.g.  "  2"      "  2"
                         #         "  222" -> "  2"
                         #                    "  22"
t                        # Loop until all 2s are on their own line
G                        # Append a newline and input
s/1+/&&1/                # Double the number of 1s and append an extra
s/(.*)(\n1*)/&\n\1/      # Copy all of the lines with 2s to the end
/1/!c+                   # If there aren't any 1s print a '+'
y/12/++/                 # Convert all 1s and 2s to +s

+1 টি আপনি 5 বাইট ব্যবহার করে সংরক্ষণ করতে পারবেন s/( *2)2(2*)/\1\n\1\2/এবং s/(.*)(\n1*)/&\n\1/হিসাবে দেখানো এখানে , 99. মোট স্কোর জন্য
seshoumara

5

লুয়া 113 , 90 বাইট

r,w,p=string.rep,io.read(),io.write;s=r(' ',w-1)p(r(s..'+'..'\n',w-1))p(r('+',w*2-1)..'\n')p(r(s..'+'..'\n',w-1))

r,w=string.rep,io.read()d=w*2-1;for a=1,d do print(a~=w and r(' ',w-1)..'+'or r('+',d))end


5

আর, 54 বাইট

@ জারকো ডাবল্ডামকে ধন্যবাদ 7 বাইট অফ শেভ:

function(n){a=matrix("",y<-n*2-1,y);a[n,]=a[,n]="x";a}

পূর্ববর্তী উত্তর:

f=function(n){a=matrix("",n*2-1,n*2-1);a[n,]="x";a[,n]="x";a}

1
আপনার ফাংশনগুলির নাম রাখতে হবে না, তাই function(n){a=matrix("",n*2-1,n*2-1);a[n,]="x";a[,n]="x";a}59 বাইট হবে!
জেএডি

1
এছাড়াও, আপনি ব্যবহার করে একটি বাইট সংরক্ষণ করতে পারেনmatrix("",y<-n*2-1,y)
জেএডি

1
a[n,]=a[,n]="x"আরও কিছু বাইট সংরক্ষণ করে কাজ করে।
জেএডি

আপনি scan()কোনও ফাংশন না দিয়ে এটিকে একটি প্রোগ্রাম তৈরি করে আরও 4 বাইট সংরক্ষণ করতে পারেন :n=scan();a=matrix("",y<-n*2-1,y);a[n,]=a[,n]="+";a
rturnbull

4

পাওয়ারশেল , 48 বাইট

param($n)($x=,(" "*--$n+"+")*$n);'+'*(1+2*$n);$x

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

ইনপুট নেয় $n--$nস্পেসের একটি স্ট্রিং তৈরি করে শুরু করে , সাথে সংমিশ্রিত +। এটি কমা অপারেটর, (নতুনভাবে হ্রাস) $nবার ব্যবহার করে একটি অ্যারেতে রূপান্তরিত । $xপাইরেখায় একটি অনুলিপি রাখার জন্য সেই অ্যারেটি প্যারেনগুলিতে সঞ্চয় করা হয় এবং এনপ্যাপসুলেটেড হয়।

তারপরে আমরা মাঝের অংশটি করি যা +স্ট্রিংটি যথাযথ সংখ্যার বাইরে বেরিয়ে যায়। পাইপলাইনে রেখে গেছে অবশেষে, আমরা $xআবার পাইপলাইন লাগালাম।

এগুলি সমস্ত প্রোগ্রাম সমাপ্তির সময় পাইপলাইনে রেখে যায় এবং অন্তর্ভুক্ত Write-Outputউপাদানগুলির মধ্যে একটি নতুন লাইন সন্নিবেশ করায়।




3

সিজেম , 23 বাইট

ri_(S*'++a\2*(*_z..e>N*

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

ব্যাখ্যা

এটি কিছুটা suboptimal বোধ করে তবে ধারণাটি নিম্নলিখিত দুটি গ্রিডকে উচ্চমানের করা:

  +
  +
  +
  +
  +



+++++

যা কাঙ্ক্ষিত ফলাফল দেয়।

ri    e# Read input and convert to integer N.
_(    e# Duplicate and decrement.
S*    e# Get a string of N-1 spaces (indentation of the vertical bar).
'++   e# Append a + (the vertical bar).
a     e# Wrap the line in an array.
\2*(  e# Swap with the other copy of N and compute 2N-1.
*     e# Repeat the line that many times.
_z    e# Duplicate the grid and transpose it.
..e>  e# Pairwise maximum between the two grids. This superimposes them.
N*    e# Join with linefeeds.

3

সিজেম, 17

ri(S*_]'+*_ffe>N*

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

ব্যাখ্যা:

ri(      read n, convert to int and decrement
S*       make a string of n-1 spaces
_]       duplicate it and put the 2 strings in an array
'+*_     join the strings with a '+' and duplicate the result
ffe>     for each pair of characters from the 2 (identical) strings,
          get the larger character (results in a matrix)
N*       join the rows with newlines


3

05 এ বি 1 , 15 14 12 বাইট

F'+}¹·<×)û.c

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

-2 ধন্যবাদ Emigna।


1
আপনি F'+}¹·<×)û.c12 এর জন্য করতে পারেন
এমিগিনা

আপনার চেষ্টা করে দেখুন অনলাইন লিঙ্কটি খারাপ - এটি পোস্টের বর্তমান সংশোধনের সাথে লিঙ্ক দেয় না তাই এটি "খারাপ আউটপুট" দেখায় যা উপরের পরীক্ষার কেসের সাথে মেলে না।
টমাস ওয়ার্ড

@ থমাস ওয়ার্ড: ভাল ধরা! আমি লিঙ্কটি সংশোধন করেছি।
Emigna


2

জেএস (ইএস 6), 88 74 73 বাইট

x=>(x--,y=y=>(" ".repeat(x)+`+
`).repeat(x),y``+"+".repeat(x+x+1)+"\n"+y``)

সম্ভবত আরও গল্ফ করা যেতে পারে।

Snippetify(x=>(x--,y=y=>(" ".repeat(x)+`+
`).repeat(x),y``+"+".repeat(x+x+1)+"\n"+y``))
<script src="https://programmer5000.com/snippetify.min.js"></script>
<input type = "number">
<pre data-output></pre>


1
আমি পুরোপুরি নিশ্চিত নই, তবে আমি মনে করি আপনি "\n"দুটি ব্যাকটিক এবং তাদের মধ্যে একটি আক্ষরিক নতুন
লাইনটি

কেবল এখন এই সমাধানটি দেখে আপনি আমাকে কয়েক মিনিটের মধ্যে মারধর করেছেন। সময়ের অল্প উইন্ডোতে পোস্ট করা একই ভাষায় একই সমাধানের চারপাশে শিষ্টাচারগুলি কী?
শেগি

2

জাভাস্ক্রিপ্ট (ES6), 60 বাইট

f=
n=>(r=([s,t])=>(s=s.repeat(n-1))+t+s+`
`)([r(` +`),r(`++`)])
<input type=number min=1 oninput=o.textContent=f(this.value)><pre id=o>

দুটি ট্রেলিং নিউলাইন আউটপুট। বিকল্প সূত্র, এছাড়াও 60 বাইট:

n=>(r=a=>(s=a[0].repeat(n-1))+a[1]+s+`
`)([r(` +`),r(`++`)])

2

পাওয়ারশেল, 48

এর চেয়ে কম হয়ে উঠবে বলে মনে হয় না (এবং অন্যান্য সমাধানের মতোই একই পদ্ধতির):

($a=,(' '*($n="$args"-1)+'+')*$n)
'+'+'++'*$n
$a

অথবা

($a=(' '*($n="$args"-1)+'+
')*$n)+'++'*$n+"+
$a"


2

রেক্সএক্স, ৮১ বাইট

arg a
b=a*2-1
do i=1 to b
  if i=a then say copies('+',b)
  else say right('+',a)
  end

2

পিএইচপি, 68 বাইট

for(;$i<$c=-1+2*$m=$argn;)echo"\n".str_pad("+",$c," +"[$m==++$i],2);

83 বাইট

for(;$i<($c=($n=$argn)*2-1)**2;)echo$i%$c?"":"\n".!++$k," +"[$k==$n|$i++%$c==$n-1];

1
আপনি পোস্ট বর্ধনের চেয়ে কিছুটা বাইট ব্যবহার করে $m=$argnএবং প্রাক-বর্ধন করে সংরক্ষণ করতে পারেন $i। আপনি $mঅ্যাসাইনমেন্টটি শেষে প্রান্তে এবং বন্ধনীগুলি ফেলে একটি বাইট সংরক্ষণ করতে পারেন ।
ব্যবহারকারী59178

@ ব্যবহারকারী59178 আপনি ঠিক কী বলতে চাইছেন তা আমি বুঝতে পারি নি
জার্গ হালসারম্যান

1
for(;$i<$c=-1+2*$m=$argn;)echo"\n".str_pad("+",$c," +"[$m==++$i],2);
ব্যবহারকারী59178

while(++$y<2*$n=$argn)echo"\n",str_pad("+",$n*2-1," +"[$y==$n],2);66 বাইট (এবং একটি শারীরিক লাইন ব্রেকের সাথে আরও একটি সংরক্ষণ করুন)
টাইটাস


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