पिरामिड स्कीम नेगेटिव


13

मेरी भाषा पिरामिड योजना में , थोड़ा मज़ेदार निर्माण है: खाली त्रिकोण:

^
-

जब कोई तर्क नहीं दिया जाता है, तो यह वापस आ जाता है 01इस निर्माण का उपयोग करने के लिए , हम इसका उपयोग कर सकते हैं:

   ^
  /!\
 ^---
 -

यह केवल 0नकार कार्य के लिए गुजरता है। हम इस परिणाम को नकार सकते हैं:

 ^
/!\
---^
  /!\
 ^---
 -

0. पाने के लिए एक और नकारात्मकता देता है:

   ^
  /!\
 ^---
/!\
---^
  /!\
 ^---
 -

चुनौती

एक पूर्णांक n , 1 को देखते हुए , खाली पिरामिड को वर्णित फैशन में n बार नकारा जा रहा है ।

परीक्षण के मामलों

input
output

1
   ^
  /!\
 ^---
 -

2
 ^
/!\
---^
  /!\
 ^---
 -

3
   ^
  /!\
 ^---
/!\
---^
  /!\
 ^---
 -

6
 ^
/!\
---^
  /!\
 ^---
/!\
---^
  /!\
 ^---
/!\
---^
  /!\
 ^---
 -

यहाँ उपेक्षा से मुझे लगता है कि आप का अर्थ है बिटवाइज़ सप्लीमेंट ( ~)?
user202729

@ user202729 नहीं, मेरा मतलब है कि नियमित उपेक्षा।
कॉनर ओ'ब्रायन

तो यह C / C ++ !( not) है।
user202729

@ user202729 हाँ। हालांकि इसका क्या अर्थ है कि समस्या के लिए स्पर्शरेखा है
कॉनर ओ'ब्रायन

1
/ / चेतावनी! /! मैं हर जगह त्रिकोण देख रहा हूँ!
RedClover

जवाबों:


7

चारकोल , 17 बाइट्स

FN«↙^→/!\¶³‖T»↓^-

इसे ऑनलाइन आज़माएं! लिंक कोड के वर्बोज़ संस्करण के लिए है। स्पष्टीकरण:

FN«

नकारों की उचित संख्या के लिए लूप।

↙^→/!\¶³

एक नकार कार्य को मुद्रित करें। ( ³विस्तार करने के लिए ---)

‖T

कैनवास को प्रतिबिंबित करें।

»↓^-

लूप के अंत में, खाली त्रिकोण प्रिंट करें।


सिर्फ फी, खाली त्रिकोण -इसके बजाय का उपयोग करता है_
कॉनर ओ'ब्रायन

@ ConorO'Brien कि बाहर इशारा करने के लिए धन्यवाद! मुझे लगता है कि यह सही नहीं लग रहा था, लेकिन मैं इस पर अपनी उंगली नहीं रख सका ...
नील


2

जावास्क्रिप्ट (ईएस 6), 77 74 बाइट्स

n=>(s=`^
  /!\\
 ^---`,n%2?`   `+s:` ^`)+`
/!\\
---${s}`.repeat(n/2)+`
 -`

कोशिश करो:




1

जावा 8, 104 बाइट्स

n->{String r=n%2>0?"   ^\n":" ^\n";for(;n-->0;r+=n%2<1?"  /!\\\n ^---\n":"/!\\\n---^\n");return r+" -";}

स्पष्टीकरण:

इसे यहाँ आज़माएँ।

n->{                       // Method with integer parameter and String return-type
  String r=                //  Result-String, starting at:
           n%2>0?          //  If the input is odd:
            "   ^\n"       //   Start the result at "   ^" + new-line
           :               //  Else (the input is even):
            " ^\n";        //   Start the result at " ^" + new-line
  for(;n-->0;              //  Loop the input amount of times
    r+=n%2<1?              //   If the current row is even:
        "  /!\\\n ^---\n"  //    Append the result-String with "  /!\" + new-line
                           //                                  " ^---" + new-line
       :                   //   Else (the current row is odd):
        "/!\\\n---^\n"     //    Append the result-String with "/!\" + new-line
                           //                                  "---^" + new-line
  );                       //  End of loop
  return r                 //  Return the result-String
          +" -";           //   + " -"
}                          // End of method








0

पायथन 3 , 167 बाइट्स

def f(n):
	g=[[" "]*5for _ in'  '*-~n];a=["^","/!\\","---"]
	for i in range(n):
		for r,R in zip(a,g[i*2:]):R[(i-n)%2*2+(r>"]"):]=r
	g[-2][1]="^";g[-1][1]="-";return g

इसे ऑनलाइन आज़माएं!

-4 बाइट्स मिस्टर एक्सकोडर
-1 बाइट के लिए धन्यवाद जोनाथन फ्रीच को धन्यवाद


' '*2*nहो सकता है ' '*n(वहाँ दो रिक्त स्थान है, लेकिन eugh ... एसई markdown), और फिर ' '*n+' 'से बदला जा सकता है ' '*-~nके लिए 168 बाइट्स
श्री एक्सकोडर

@ Mr.Xcoder ओह शांत, धन्यवाद!
हाइपरन्यूट्रिनो 13

मुझे लगता है कि r=="^"हो सकता है r>"]"
जोनाथन फ्रीच

@JonathanFrech ऐसा प्रतीत होता है, धन्यवाद!
हाइपरएन्यूट्रीनो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.