ফ্যালকন ভারী পর্যায়


43

প্রতিস্থাপন ব্যতীত চারটি বাইটের একটি সেট চয়ন করুন (যেমন কোনও বাইট পুনরাবৃত্তি করা হয়নি) এবং নিম্নলিখিত চারটি সেট থেকে যে কোনও একটি থেকে প্রয়োজনীয় কোনও নির্দিষ্ট ক্রমে প্রয়োজনীয় নয়:

  1. যে কোনও একটি একক-বাইট এনকোডিংয়ের অক্ষর
  2. 00 – এফএফ পরিসীমাটিতে ইউনিকোডের অক্ষর
  3. সীমাবদ্ধ দশমিক পূর্ণসংখ্যা .128–127 সীমাতে
  4. স্বাক্ষরযুক্ত দশমিক পূর্ণসংখ্যা 0-255 এর মধ্যে রয়েছে

আপনি যে চারটি মান পছন্দ করেছেন (দয়া করে সেগুলি হ'ল দয়া করে তা উল্লেখ করুন) বৈধ ইনপুট হবে। আপনাকে অবশ্যই প্রতিটি মান নীচের ASCII শিল্পকর্মের সাথে যুক্ত করতে হবে।

আপনার যে কোনও চারটি বৈধ ইনপুট দেওয়া (যে কোনও উপায়ে) দেওয়া হয়েছে, সংশ্লিষ্ট এএসসিআইআই শিল্পের সাথে প্রতিক্রিয়া করুন (কোনও উপায়ে এমনকি স্ট্রিংগুলির তালিকাও)। যতক্ষণ না ছবিটি একটি স্বতন্ত্র 2D অঞ্চলে থাকে ততক্ষণ চারদিকে অতিরিক্ত সাদা-স্থানের অনুমতি দেওয়া হয়।

প্রথম বাইট:

     /\
    /  \
   |    |
   |    |
   |    |
   |____|
    \__/
    |  |
    |  |
    |  |
    |  |
 /\ |  | /\
/  \|  |/  \
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
|  ||  ||  |
AAAAAAAAAAAA

দ্বিতীয় বাইট:

  /\
 /  \
|    |
|    |
|    |
|____|
 \__/
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 |  |
 AAAA

তৃতীয় বাইট:

  /\
 /  \
|    |
|    |
|    |
|____|
 \__/
 |  |
 |  |
 |  |
 |__|
  /\

চতুর্থ বাইট:

 db
_/\_
\__/
|  |
|  |
|  |
|__|
 /\

এই এএসসিআইআই আর্ট কলমোগোরভ জটিলতা চ্যালেঞ্জটি সম্পর্কে নতুন কী?

  1. বৈধ ইনপুটগুলি নির্বাচন করার ক্ষমতা চ্যালেঞ্জের জন্য একটি নতুন দিক উপস্থাপন করে। সম্পূর্ণ ফলাফল এনকোড করার জন্য ইনপুটগুলি স্পষ্টতই খুব সীমাবদ্ধ, তবে যোগ্যতার নজরে যথেষ্ট তথ্য বহন করতে পারে।

  2. একাধিক সম্ভাব্য আউটপুটগুলি অনেকগুলি কাঠামো ভাগ করে দেয়, তাই কোড বা উপ-চিত্রগুলির পুনরায় ব্যবহার প্রতিটি চিত্রের মধ্যে এবং চিত্রগুলির মধ্যে উভয়ই সম্ভব।

  3. এখানে যথেষ্ট সদৃশতা রয়েছে যে ভাষাগুলিও এর মতো চ্যালেঞ্জগুলির পক্ষে ভালভাবে লক্ষ্য করা যায় না, কেবলমাত্র হার্ড-কোডিংয়ের স্ট্রিংগুলি ব্যাপকভাবে চালিত করার পরিবর্তে চালাক কোড ব্যবহার করতে সক্ষম হওয়ার উপযুক্ত সুযোগ রয়েছে।


2
ডিবি অ্যাসটন মার্টিনের মতো শোনাচ্ছে! আফাইক এটি টেসলা রোডস্টার।
স্তর নদী সেন্ট

1
@ লেভেলরাইভারস্ট বোউই, ব্রাউন নয়!
অ্যাডম

শীর্ষস্থানীয় / পশ্চাদপসরণের সাদা স্থানটি বিশেষত বাম দিকে অনুমোদিত?
স্তরের নদী সেন্ট

@ লেভেলরিভারস্ট ধন্যবাদ আমি এটি লিখতে ভুলে গেছি, যদিও আমি এটি ভেবে দেখেছি।
অ্যাডম

1
এটি কি আসলেই অ্যানিমেশন ?
ফ্যানটাসি

উত্তর:


41

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

RegPack'ed। ইনপুট হিসাবে 0 ... 3 আশা করে।

n=>[...'BigFu!#?%$Rocket'].reduce((s,c)=>(x=s.split(c)).join(x.pop()),`oF#$!
FRFRFRF|??|$i$t$t$t$t%# t #
!t!BBB
uuceeeeeee%c%|?|
o#, db
_#_
iggg
|?|%#g|o|e%t%t%tkgttgttcu,o#%!
RRR|??|%ieF R|oo|
$
oo%
 ?__#/\\!/o\\uAAAAFo g
ti\\?/Bkkk`).split`,`[n]

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


16
BigFu!#?%$Rocket? তবে এটি কেবল ফ্যালকন হেভি!
Adám

16
@ অ্যাডম ঠিক আছে তবে BFR.reduce() == FalconHeavy: পি
আরনল্ড

এটি প্রতিভা। এক সেকেন্ডের জন্য আমি অপেক্ষা করার মতো ছিলাম, সেখানে জাভাস্ক্রিপ্ট অন্তর্নির্মিত আছে ?! তারপরে আমি হুশ করে এসেছি ... +1!
রডলফিটো

বরাবরের মতো চিত্তাকর্ষক।
ওয়েজুন ঝো

"FRFRFRF" = "Fu!#?%$RocketFu!#?%$RocketFu!#?%$RocketFu!#"ঠিক আছে? আমি এই উত্তরটির চেয়ে বেশি ভালবাসি lol।
ম্যাজিক অক্টোপাস উরন

13

কাঠকয়লা , 67 বাইট

NθF⁼³θ«PAA↑↑¹⁸↗²‖MM⁴±χ»¿θ«↙²↓⁴M↗__¶\_¶»↓d/_¶ _\↓×⁴∨›²θ⁶¿‹¹θAA↑¶/_‖M

এটি অনলাইন চেষ্টা করুন! লিঙ্কটি কোডটির ভার্জোজ সংস্করণ। 3-0 নম্বর হিসাবে ইনপুট নেয়। ব্যাখ্যা:

Nθ

নম্বরটি ইনপুট করুন।

F⁼³θ«PAA↑↑¹⁸↗²‖MM⁴±χ»

যদি এটি 3 হয়, অর্ধেক বুস্টারটি আঁকুন, তারপরে এটি মিরর করুন, তারপরে রকেটের ডগায় সরান।

¿θ«↙²↓⁴M↗__¶\_¶»

যদি এটি 0 না হয়, সামনের জ্বালানী ট্যাঙ্কের বাম অর্ধেকটি আঁকুন।

↓d/_¶ _\

তবে এটি যদি 3 হয় তবে নাকের শঙ্কুটির বাম অর্ধেকটি আঁকুন।

↓×⁴∨›²θ⁶

রকেটের বাম দিক আঁকুন।

¿‹¹θAA↑¶/_‖M

রকেটের উপযুক্ত বেস আঁকুন এবং তারপরে শেষ করতে মিরর করুন।


আপনি কি Charcoalএই প্রতিযোগিতার জন্য তৈরি করেছেন ?
নিলসবট

@nielsbot চারকোল 7 মাস বয়সী (কমিট লগ দেখুন)।
ফায়ারফক্স

আমি মজা করছিলাম. তবে আমার ধারণা এটি প্রশ্ন উত্থাপন করে: আপনি যদি সমস্যা সমাধানের জন্য ভাষা তৈরি করেন তবে এটি কি গল্ফ করছে? সীমা কোথায়?
নিলসবট

1
@nielsbot আমি মনে করি যে এটি একটি মানক ফাঁক হিসাবে গণ্য ।
নীল

7

পরিষ্কার , 292 278 273 271 262 261 বাইট

অ্যাডাম -5 বাইট ধন্যবাদ

import StdEnv,Text
e=[k,k,k,"|__|",m]
l=repeatn
o="\\__/"
n="/  \\"
m="/\\"
u="|    |"
s="AAAA"
k="|  |"
?z=[m,n,u,u,u,"|____|",o:z]

\i=[cjustify 12[c\\c<-:q]\\q<-[?[k,k,k,k,m+" "+k+" "+m,n+k+n,k+k+k:l 18(k+k+k)]++[s+s+s],?(l 24k++[s]),?e,["db","_/\\_",o:e]]!!i]

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

একটি ল্যাম্বডা ফাংশন, ওপিতে তালিকাভুক্ত ক্রমের Intমানগুলিতে মানচিত্র তৈরি করছে 0..3



@ অ্যাডম ধন্যবাদ! আমি এটি প্রয়োগ করতে সক্ষম হয়েছি, তবে আমি এটি আরও ছোট করার পরে কেবল এটি দেখেছি - এখনও বাইটগুলি সংরক্ষণ করে :)
ousurous

আহ, সেখানে দুটি স্নিপেট কেন?
এরিক দ্য আউটগল্ফার

@ এরিকথ আউটগলফার দ্বিতীয়টি হ'ল ল্যাম্বদা। প্রথমটি হ'ল এটির উপর নির্ভর করে কোড। আমি সেগুলিকে একই স্নিপেটে রাখি না কারণ আমি স্নিপেটে কোনও অ্যাসাইনমেন্টটি মাল্টলাইন করতে পারি না।
13urous

5

পাইথন 2 , 292 290 284 282 281 বাইট

i,j,d,e,x,y=input()," "," /\\ ","/  \\","|  |","\__/"
f=i<1
l,m,n,p,q,s=3*f*j,j*(i<3),d*f,e*f,x*f,j*(i>0)
print"\n".join(([l+j+d,l+j+e]+[l+"|    |"]*3+[l+"|____|",l+j+y],[" db\n_/\_",y])[i>2]+([l+j+x]*4+[n+s+x+n,p+s+x+p]+[q+s+x+q]*18+[s+"A"*(4,12)[f]],[m+x]*3+[m+"|__|",m+d])[i>1])

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

ইনপুট হিসাবে 0 থেকে 3 একটি পূর্ণসংখ্যা নেয় এবং প্রতিটি আউটপুট তৈরির জন্য তালিকা সূচীকরণ (1 বা 0) ব্যবহার করে।

একটি অপ্রয়োজনীয় জোড়া বন্ধনী জন্য -2।

-6 শুধুমাত্র একবার ব্যবহৃত ভেরিয়েবল অ্যাসাইনমেন্টটি সরিয়ে দিয়ে।

অন্য একক ব্যবহারের পরিবর্তনশীল জন্য।

@ রডের টিপ সহ -1


1
n, pএবং qভেরিয়েবল খুব অপ্রয়োজনীয় হয় (-2 প্রতিটি বাইট)। " db"এবং পরে "_/\_"যোগদান করা হবে "\n", আপনি " db\n_/\_"অন্য বাইট সংরক্ষণ করতে উভয় রূপান্তর করতে পারেন । আপনি (সম্ভবত) +yপ্রতিটি উপাদান থেকে তালিকা থেকে বেরিয়ে (এবং কনস্টকেও মুছে ফেলতে পারেন) এর মতো কিছু করতে পারেন(...)[i>2]+["\__/"]
রড

@ রড টিপসের জন্য ধন্যবাদ for আমি সেটিকে মিস করেছি। যদিও এন, পি এবং কি সম্পর্কে নিশ্চিত নয়। এগুলি দু'বার ব্যবহার করা হয়, বুস্টারগুলির প্রয়োজন হয় কিনা তা নির্ধারণের জন্য মূল রকেটের প্রতিটি পাশের একটি। একটি ক্ষেত্রে সিমাইলারি ওয়াই এর আগে নিউলাইন এবং অন্য ক্ষেত্রে কিছু অন্যান্য অক্ষর প্রয়োজন। সৎ হওয়ার জন্য সম্ভবত একটি সম্পূর্ণ পুনর্লিখন থেকে উপকৃত হতে পারে। এ থেকে কোনও ধারণা নিতে নির্দ্বিধায় এবং আপনার নিজের উত্তর পোস্ট করতে এগুলি ব্যবহার করুন।
এলপেড্রো

5

রুবি , 234 212 205 বাইট

->n{y=*"| "
h=%w{/ /\ }+["|  "]*3+%w{|__ \\_}+y*3
t=%w{|_ /}
[h+["| ","/\\ | ","/  \\| ",*["|  || "]*18,?A*6],h+y*21<<?A*2,h+t,%w{d _/ \\_}+y*3+t][n].map{|a|a.rjust(6," ")+a.reverse.tr("\\\\/d","/\\\\b")}}

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

পূর্ণসংখ্যার 0-3 নেয়। প্রতিটি পর্বের বাম অংশের একটি অ্যারে তৈরি করে, ইনডেক্স করে, তারপরে প্যাডগুলি এবং প্রতিটি সারি প্রতিবিম্বিত করে। সমস্ত প্যাডিং একই প্রস্থে হয়, সুতরাং পরবর্তী পর্যায়গুলির নেতৃস্থানীয় হোয়াইটস্পেস থাকে। স্ট্রিংগুলির একটি অ্যারে প্রদান করে।

-২ বাইট: পরে yপ্রয়োজনের পরিবর্তে এখনই অ্যারে হিসাবে ঘোষণা করুন *[y]

-5 বাইট: x="\\"সঙ্গে প্রতিস্থাপন t=%w{_| \\}

-5 বাইট: কম ডিফেরেন্সিং, আরও অ্যারে সংযোজন।

-1 বাইট: h+y*21+[?A*2]-> h+y*21<<?A*2পর্ব 1 এ।

-3 বাইট: অনুমানটি ফলাফলটিতে *$/যোগদানের বাদ দিতে দেয়।

-4 বাইট: ["b","\\_","_/"]-> %w{b \\_ _/}ফেজ 3।

-২ বাইট: %wমাথা অ্যারেতেও স্বরলিপি ব্যবহার করুন ।

-7 বাইট: rjustম্যানুয়াল প্যাডিংয়ের পরিবর্তে ব্যবহার করুন (এর অর্থ ডান পাশ দিয়ে শুরু করার পরিবর্তে বাম দিকটি তৈরি করা এবং এটি মিরর করে দেওয়া)

Ungolfed:

->n{
  y=*"| "                                            # Same as y=[" |"]
  h=%w{/ /\ }+["|  "]*3+%w{|__ \\_}+y*3              # Head for phases 0-2
  t=%w{|_ /}                                         # Tail for phases 2,3
  [
    h+["| ","/\\ | ","/  \\| ",*["|  || "]*18,?A*6], # Phase 0
    h+y*21<<?A*2,                                    # Phase 1
    h+t,                                             # Phase 2
    %w{d _/ \\_}+y*3+t                               # Phase 3
  ][n].map{|a|                                       # Choose phase
    a.rjust(6," ") +                                 # Pad left to width 6
    a.reverse.tr("\\\\/d","/\\\\b")                  # Add mirror (right side)
  }
}


2

রুবি , 209 183 বাইট

->n{z=[a=' /\\ ',b='/  \\']+['|    |']*3+%w{|____| \__/}+[c='|  |']*24+[?A*n]
n>4&&z[10..-n/6]=n>8?[c,a+c+a,b+c+b]+[c*3]*18:['|__|',a]
n==5&&z[0,6]=%w{db _/\_}
z.map{|i|i.center(12)}}

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

নিম্নলিখিত ইনপুটগুলি প্রয়োজনীয়:

Centre core + upper stage + fairing: 4
As above + boosters : 12
Upper stage + fairing: 6
Upper stage without fairing 5

ধারণাটি হ'ল centre core + upper stage + fairingডিফল্ট হিসাবে নেওয়া এবং অন্যান্য ফলাফলের জন্য এটি সংশোধন করা।

মন্তব্য

->n{
  #z = array of parts for centre core + upper stage + fairing, with n A's at the bottom
  z=[a=' /\\ ',b='/  \\']+['|    |']*3+%w{|____| \__/}+[c='|  |']*24+[?A*n]

  #if n not 4, z from element 10 to the last [10..-1] or last but one [10..-2] =
  n>4&&z[10..-n/6]=
    n>8?[c,a+c+a,b+c+b]+[c*3]*18:   #centre core + boosters#
    ['|__|',a]                      #upper stage engine
  n==5&&z[0,6]=%w{db _/\_}        #if n==5, replace first 6 elements with unfaired payload
  z.map{|i|i.center(12)}          #pad each element of array to 12 characters
}                                 #return array of strings (format allowed by question)

ইনপুটটির অপ্রয়োজনীয় ব্যবহারের প্রথম উত্তর! খুব সুন্দর.
benj2240

1

লাল , 333 বাইট

f: func[g][t:{    }b:{ /\ }c:{/  \}d:{   |}e:{|}j:{\__/}k:{|  |}a:{AAAA}h:[1[t b]1[t c]3[d t e]1[d{____}e]1[t j]]z:[3[t k]1[t{|__|}]1[t b]]r: func[w][foreach[i v]w[loop i[print rejoin v]]]switch g[1 do[r h r[4[t k]1[b k b]1[c k c]18[k k k]]r[1[a a a]]]2 do[r h r[24[t k]]r[1[t a]]]3 do[r h r z]4 do[r[1[t{ db}]1[t{_/\_}]1[t j]]r z]]]

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

ইনপুট হিসাবে 1 - 4 নেয়

f: func [ g ] [
    t: {    }
    b: { /\ }
    c: {/  \}
    d: {   |}
    e: {|}
    j: {\__/}
    k: {|  |}
    a: {AAAA} 
    h: [1 [t b] 1 [t c] 3 [d t e] 1 [d {____} e ] 1 [t j]]
    z: [3 [t k] 1 [t {|__|}] 1 [t b]]
    r: func [ w ] [
        foreach [ i v ] w [
            loop i [print rejoin v]]]
    switch g [
        1 do [r h r [4 [t k] 1 [b k b] 1 [c k c] 18 [k k k]] r [1 [a a a]]]
        2 do [r h r [24 [t k]] r [1 [t a]]]
        3 do [r h r z]
        4 do [r [ 1 [t { db}] 1 [t {_/\_}] 1 [t j] ] r z]
    ]
]

রেবোল , 258 বাইট

আমি রেবলের compressফাংশনটি নিয়ে একটি পরীক্ষা করেছিলাম , সমস্ত 4 টি পর্যায়ের একটি স্ট্রিং সংকোচন করে এবং সংশ্লেষণের পরে এর সংশ্লিষ্ট অংশটি মুদ্রণ করি:

f: func[n][o:[[1 374][374 196][570 74][644 37]]
b: decompress debase{eJzjUgAB/RguMKWgAGbUgDg1OFnxQABmKcTEx+uDGTVQOZwM/RgwA2QTyBYQG2wbiAHDw5vjiAS4IEEOCwGoWmQKGsaQAIYE4eAhqeMFSCICGZKSxBWvHxPPBVYKDzkoAVamHwMAjkWmoKkCAAA=}
repeat i o/(n)/2[prin b/(i + o/(n)/1)]]

 f 3
  /\
 /  \
|    |
|    |
|    |
|____|
 \__/
 |  |
 |  |
 |  |
 |__|
  /\

1

জেস্টএক্স , 124 বাইট

↕t▌ÇÇÉÇ~éÇÇÇÇÇÇÇÉΘçK↑ε♀▄ü╙Çz⌡"#ße┐é+\òEhZ█╣S♪[ƒuø>!f♪K▌;0♂9☺}ås══½☻eP▌◙&£óZß:&╝af$V≈-wº[√D(♪╘Pφó√ò▲¶>å⌡◘├^∟z◘αßj◙÷»|æ⌠┼øk&£b

ব্যাখ্যা

↕t▌ÇÇÉÇ~éÇÇÇÇÇÇÇÉΘçK↑ε♀▄ü╙Çz⌡"#ße┐é+\òEhZ█╣S♪[ƒuø>!f♪K▌;0♂9☺}ås══½☻eP▌◙&£óZß:&╝af$V≈-wº[√D(♪╘Pφó√ò▲¶>å⌡◘├^∟z◘αßj◙÷»|æ⌠┼ # Push literal      /\\n    /  \\n   |    |\n   |    |\n   |    |\n   |____|\n    \__/\n    |  |\n    |  |\n    |  |\n    |  |\n /\ |  | /\\n/  \|  |/  \\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\n|  ||  ||  |\nAAAAAAAAAAAA0\n  /\\n /  \\n|    |\n|    |\n|    |\n|____|\n \__/\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n |  |\n AAAA0\n  /\\n /  \\n|    |\n|    |\n|    |\n|____|\n \__/\n |  |\n |  |\n |  |\n |__|\n  /\0\n db\n_/\_\n\__/\n|  |\n|  |\n|  |\n|__|\n /\
ø                                                                                                                       # Push literal 0
k                                                                                                                       # Push a list of strings obtained by splitting the second stack value with the first stack value.
&                                                                                                                       # Swap the top two stack values.
£b                                                                                                                      # Push the value in the list of the second stack value at the index of the first stack value.

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


0

সি (ঝনঝন) , 421 408 বাইট

r,d,i;f(t){char *s="    ",*e="\n",*l[]={" /\\ ","/  \\","|    |","|____|","\\__/","|  |","AAAA","|__|"," /\\ ","_/\\_","\n"," db","|  ||  ||  |"},*p[]={"VABU3C1DVE8FFF1G","VABU3C1DVE4F1RYAFAKBFBKZ9MM1YGGG","VABU3C1DVE3F1HI","VLJE3F1HI"},*a="",*b,*c=e,*q=p[t];for(r=1;d=*q++;r=(d/48&&57/d)?d-48:r,c=(d/89&&90/d)?e+90-d:c,a=(d/82&&86/d)?s+86-d:a)if(d/65&&77/d)for(b=l[d-65],i=0;i<r;i++)printf("%s%s%s",a,b,c);}

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


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