Bu benim yastığım


66

... ölümsüzleştirmeme yardım edecek misin?

görüntü tanımını buraya girin

Birkaç yıl önce bu yastığı aldım ve görünüşe göre ondan kurtulmanın zamanı geldi. Lütfen yanımda getirebileceğim ve biraz yattığım zaman bu yastığı yeniden yaratmak için kullanabileceğim bir işlev ya da program yazabilir misiniz?

Giriş argümanları olmadan çalışması gerekir.

Çıktı tam olarak böyle görünmelidir (izleyen satırlar ve boşluklar tamamdır).

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////

Bu kod golf, yani bayttaki en kısa kod kazanıyor!


Liderler Sıralaması


7
Yastığın farklı çizgi kalınlıklarını göstermek için, desenin biraz daha karmaşık olmadığını hayal kırıklığına uğrattım.
Sparr

4
@Sparr Denedim, ancak yalnızca ASCII karakterlerini kullanarak iyi görünmesini sağlayamadım. Bunun yeterince yakın olduğunu
Stewie Griffin,

3
Ben sadece boşluk
ekleyecektim

1
'görünüşe göre': P
Pysis

7
Şimdi boş bir yastık alabilir ve kazanan parçacığı üzerine yazdırabilirsiniz.
coredump,

Yanıtlar:


24

05AB1E , 18 15 bayt

Kod:

„/\5×{4Å6×»6F=R

Açıklama:

„/\               # Push the string "/\"
   5×             # Repeat 5 times: "/\/\/\/\/\"
     {            # Sort, resulting in: "/////\\\\\"
      4Å6         # Create a list of 6's with length 4: [6, 6, 6, 6]
         ×        # Vectorized string multiplication
          »       # Join by newlines
           6F     # Do the following six times..
             =    #   Print with a newline without popping
              R   #   Reverse the string

CP-1252 kodlamasını kullanır . Çevrimiçi deneyin!


2
Vay ... iki farklı alır, aynı bayt sayısı ...
Oliver Ni

30

/// , 116 bayt

/a/\\\\\\\\\\\\\\\///b/\\\\\\\\\\\\\\\\//A/aaaaa//B/bbbbb//C/ABABABABABAB
//D/BABABABABABA
/CCCCDDDDCCCCDDDDCCCCDDDD

Çevrimiçi deneyin!

Düzenleme : \\\\\\\\\\\\\\\/ve \\\\\\\\\\\\\\\\aslında bir olan tek sırasıyla / ve \.

Düzenleme : -3 çünkü kaldırmayı düşündüm i. Bunun daha fazla golf oynayamayacağını düşünüyorum.


15

Python 2,49 bayt

b,a='\/';exec("print(a*5+b*5)*6;"*4+"a,b=b,a;")*6

Bayt kazandıran bu temiz yöntem için Mitch Schwartz'a teşekkür ederiz. Fikir, dört satır basmak ('\\'*5+'/'*5)*6, eğik çizgi ve ters eğik çizgi rollerini değiştirmek ve sonra tüm bu işlemi 6 kez yapmaktır. İki karakter saklanır ave bve aynı takas a,b=b,a. İkili döngü, aşağıdaki kod dizesini oluşturarak ve daha sonra birlikte çalıştırarak iki katına çıkar exec:

print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;print(a*5+b*5)*6;a,b=b,a;

50 bayt:

s='/'*5+'\\'*5;exec("print s*6;"*4+"s=s[::-1];")*6

Satır dizesini oluşturur, dört kez yazdırır ve sonra ters çevirir, ardından 6 kez yapar. Bunu, aşağıdaki kodu oluşturarak ve sonra çalıştırarak yapar:

print s*6;print s*6;print s*6;print s*6;s=s[::-1];print s*6;print s*6;print s*6;print s*6;s=s[::-1];print s*6;print s*6;print s*6;print s*6;s=s[::-1];print s*6;print s*6;print s*6;print s*6;s=s[::-1];print s*6;print s*6;print s*6;print s*6;s=s[::-1];print s*6;print s*6;print s*6;print s*6;s=s[::-1]

İşte golf oyunumun bazı yenilikleri:

for c in([1]*4+[-1]*4)*3:print('/'*5+'\\'*5)[::c]*6

for i in range(24):print('/\\'*5+'\/'*5)[i/4%2::2]*6

for c in range(24):print('\\'*5+'/'*5)[::(c&4)/2-1]*6

for i in range(24):print('/'*5+'\\'*5)[::1-i/4%2*2]*6

for c in([1]*4+[0]*4)*3:print('\/'*5+'/\\'*5)[c::2]*6

for c in([1]*4+[0]*4)*3:print('\/'[c]*5+'/\\'[c]*5)*6

for c in(['/\\']*4+['\/']*4)*3:print(c[0]*5+c[1]*5)*6

for c in([5]*4+[-5]*4)*3:print('/'*c+'\\'*5+'/'*-c)*6

print((('/'*5+'\\'*5)*6+'\n')*4+(('\\'*5+'/'*5)*6+'\n')*4)*3

for x in(['/'*5+'\\'*5]*4+['\\'*5+'/'*5]*4)*3:print x*6

a='/'*5;b='\\'*5
for x in([a+b]*4+[b+a]*4)*3:print x*6

s='/'*5+'\\'*5
for x in([s]*4+[s[::-1]]*4)*3:print x*6

s=('/'*5+'\\'*5)*9
exec("print s[:60];"*4+"s=s[5:];")*6

a='/'*5;b='\\'*5
for i in range(24):print[a+b,b+a][i/4%2]*6

12

05AB1E, 15 bayt

„/\5×{R6×6FR4F=

Çevrimiçi deneyin!

Açıklama:

„/\             # Push "/\"
   5×           # Repeat string five times: "/\/\/\/\/\"
     {          # Sort: "/////\\\\\"
      R         # Reverse: "\\\\\/////
       6×       # Repeat string six times
         6F     # Repeat the following six times:
           R    #   Reverse
            4F  #   Repeat the following four times:
              = #     Print without popping

CP-1252 kodlamasını kullanır .


8

JavaScript (ES6), 68 60 58 bayt

Özyinelemeli bir işlev. Chocochaos'un cevabından ilham alan çeşitli optimizasyonlar .

f=(n=1440)=>n--?'/\\'[n/240&1^n/5&1]+(n%60?'':`
`)+f(n):''

gösteri


Sanırım ilk çıkar &1ve iki bayt kurtarabilirsin
Henrik Christensen

@HenrikChristensen Bu sadece işe yarayacaktı n < 480. İçin n >= 480, biz parantez gerekir: (n/240^n/5)&1.
Arnauld,

8

Bubblegum , 30 bayt

00000000: d307 8118 1020 9dc5 3544 3523 f8a4 b386  ..... ..5D5#....
00000010: aae6 e113 cfa3 f13c 1acf a3f1 0c00       .......<......

Zorunlu Bubblegum cevap.


Aman Tanrım, bu dil harika!
Pedro A,

7

Haskell, 77 70 57 bayt

a%b=(<*[1..a]).([1..b]>>)
unlines$4%3$5%6<$>["/\\","\\/"]

Sıkıcı concats ve replicates ile oynamak yerine s. Eski idi:

unlines[["\\/"!!(ceiling$sin(pi*x/5)*sin(pi*y/4))|x<-[0.5..59]]|y<-[0.5..23]]

6

Brainfuck, 140 bayt

>>>++++++++[>++++++>++++++++++++<<-]++++++++++>->----<<<<<+++[>++++[>++++++[>>.....>.....<<<-]>.<<-]++++[>++++++[>>>.....<.....<<-]>.<<-]<-]

:-D


3
Oh bak! Brainfuck çözümü, Java çözümünden sekiz bayt daha kısa. Java kodlayıcılarının
beynini

Java geri
saldırdı

6

Python 2, 86 80 76 74 73 bayt

for z in range(24):a=('/'*5+'\\'*5)*24;print((a+a[::-1])*3)[z*60:z*60+60]

Muhtemelen birkaç golf daha oynayabilir ama bu bir başlangıç.

Düzenle

Bazı gereksiz parantez çıkarılarak 6 kaydedildi

Tek bir dize kullanarak ve sonra tersine çevirerek 4 tane daha

@Adnan'a teşekkürler. Dün gece geç bir gece geçirdim ve hala tam olarak uyanık değildim: p

-1 *24değerini iki kere kullanmak yerine değişkene taşıyarak


4
Ben bunun *6*4aynı olduğuna inanıyorum *24? : p
Adnan

6

Brainfuck, 149 bayt

++++++++++>++++++[>++++++++<-]>->+++++++++[>++++++++++<-]>++>+++[<<++++[<<++++++[>.....>>.....<<<-]<.>>>-]++++[<<++++++[>>>.....<<.....<-]<.>>>-]>>-]

En iyi tercüman EVAR!

Bu 6 hücre kullanır (sarma, modulo yok). İşte buradalar:

0A 00 2F 00 5C 00

00Hücreler döngü sayaçları için kullanılmaktadır. Burada sayaçlar başlangıç ​​değerleriyle doldurulur:

0A 06 2F 04 5C 03

En soldaki sayaç en içteki döngü içindir (evet, iç içe geçmiş derinlikleri 3 kullanıyorum). Lütfen 4. hücrenin ( 04sayaç) iki kez, bir /////\\\\\...kez ve \\\\\/////...her seferinde bir kez kullanıldığını unutmayın .

0A, 2FVe 5Ckarakterler \n, /ve \sırasıyla.


6

Python 2.7 66 -> 56 -> 55 bayt

a="/"*5+"\\"*5;b=a[::-1];c=6*a+"\n";d=6*b+"\n";e=4*c+4*d;print e*3

kodlamada yeni golf

a="/"*5+"\\"*5;print(4*(6*a+"\n")+4*(6*a[::-1]+"\n"))*3

Teşekkürler Stewie Griffin

Aptal bir boşluk bırakın;)


2
PPCG'ye Hoşgeldiniz! Güzel ilk cevap :) Bazı orta değişkenleri atlayabilir misiniz? En azından dve ebelki daha fazlası. Bunu test etmedim, ancak yakın olmalı print(4*c+4*(6*b+"\n"))*3. 5 bayt daha az.
Stewie Griffin,

3
55 bayt:a="/"*5+"\\"*5;print(4*(6*a+"\n")+4*(6*a[::-1]+"\n"))*3
Stewie Griffin

6

Brainfuck, 179 bayt

->++++++++[-<++++++>]++>+++++++++[-<++++++++++>]++++++++++>>>>+++[-<++++[-<++++++[-<+++++[-<<<.>>>]+++++[-<<.>>]>]<<.>>>]++++[-<++++++[-<+++++[-<<.>>]+++++[-<<<.>>>]>]<<.>>>]>]

Bunun konudaki en iyi skor olmadığını biliyorum ama beynini denemek ve denemek istedim.

Düzenleme: Kopyalama işlemi sırasında bir hata yapmış olmalıyım. Bu sürüm çalışması gerekir


Siteye Hoşgeldiniz!
DJMcMayhem

Benim için çalışmıyor. Tarayıcı bu tercüman ile telefonu kapatıyor ve kişisel bir kişi beklenmeyen bir 5 satırlık çıktı gösteriyor: /////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\ dört kez, sonra sonsuz \ .
aluriak

Evet, işe yarıyor :)
aluriak


5

Pyke, 16 bayt

"/\"6*5m*n+4*sD3

"Dize değişmezlerine izin verilen bugün güncellemeden sonra , 17 bayt

"/\\"6*5m*n+4*sD3

Burada dene!


5

MATL , 18 16 bayt

'\/'6:&+thK5&Y")

Çevrimiçi deneyin!

açıklama

'\/'   % Push this string
6:     % Push array [1 2 3 4 5 6]
&+     % 6×6 matrix with all pair-wise additions from that array
th     % Concatenate horizontally with itself. Gives a 6×12 matrix
K      % Push 4
5      % Push 5
&Y"    % Repeat each entry of the matrix 4 times vertically and 5 times horizontally
       % This gives a 24×60 matrix
)      % Index (modularly) into the string. This produces the desired 24×60 char array

5

Pyth, 22 bayt

V6V4V12p*5?%+bN2\\\/)k

Burada dene .

Açıklama:

V6                     Loop 6 times, with N from 0 to 5:
  V4                   Loop 4 times, with H from 0 to 3:
    V12                Loop 12 times, with b from 0 to 11:
      p                Print without newline
        *              The repetition
          5            5 times of
          ?            if
            %          the remainder
              + b N    when the sum of b and N
              2        is divided by 2
          \\           then the "\" character
          \/           else the "/" character
    )                  End
                       (implicitly print with newline)
  k                    k (empty string)
                       (implicit end)
                       (implicit end)

Açıklamanın anlaşılması biraz zorsa, üzgünüm ama biraz karmaşıktı.


5

V , 22 21 bayt

Edit One byte kazandı, teşekkürler @ DjMcMayhem:

5á\5á/05ä$4Ä5x$p4Ä3ä}

Değişiklikler:

  • Y4P-> Vim yerleşik komutu yerine V yinelenen satırı kullan (bu paragrafın sonuna boş bir satır ekler)
  • 3äG-> 3ä}Tamponun tamamı yerine paragrafı çoğaltın (önceki değişiklik tarafından oluşturulan boş satırları önlemek için)

Orijinal yayın

5á\5á/05ä$Y4P5x$p4Ä3äG

Çevrimiçi deneyin

Bu şekilde ayrışmış:

5á\                    Write 5 \
   5á/                 Write 5 / after
      0                Go to the beginning of the line
       5ä$             Copy the text to the end of the line and repeat it 5 times
          Y4P          Copy the line and create 4 new copies
             5x$p      Delete the 5 first characters and put them at the end of the line
                 4Ä    Duplicate this line
                   3äG Duplicate the whole text

V kullanan başka birini görmek harika! Yakın zamana kadar sadece benim oldu. Yardıma ihtiyacın olursa, beni on dokuzuncu bayta
etmekten çekinme

@DrMcMoylex Evet Dil Bu konuda bir sorun vardı :-) kullanmak eğlenceli görünüyor: Başlangıçta ben kullanmak istedim 5á\5á/05ä$5Ä5x$p4Ä3äGyerini yani Y4Ptarafından ama ... Mümkünse Kopyalama ek bir boş satır bunu anlamıyorum bir sebebi Bu konuda beni aydınlatmak iyi olurdu. Ayrıca biraz serbest zaman
bulursam dileğe

Ah, evet bu beni birçok kez rahatsız etti. Bu bilinen bir mesele. Sorun şu ki Ä, bunun bir eş anlamlısı dddeğil Y. Bu genellikle bir sorun değildir, ancak arabellek yalnızca bir satır varsa veya son satırdaysanız bazı sorunlara neden olur.
DJMcMayhem

Değiştirdiğiniz takdirde Aslında sadece fark bu yaklaşım hala çalışacak 3äGolan 3ä}bu son yeni satır yank etkileri olmaz. v.tryitonline.net/…
DJMcMayhem

Tamam, neden işe yaramadığını anladım. Ve 1 byte kazanmanın güzel bir yolu, teşekkürler!
statox,

4

Jöle , 17 16 bayt

⁾/\ẋ6Wẋ4;U$ẋ3x5Y

Çevrimiçi deneyin!

-1 bayt için 6710 (mil) sayesinde.


1
Sana bir byte kaydedebilirsiniz düşünüyorum⁾/\ẋ6Wẋ4;U$ẋ3x5Y
mil

@miles Teşekkürler, sanırım henüz hızlı bir şekilde etkili kullanamıyorum :) Ve iki Ys'ye ihtiyacım olmadığını biliyordum !
Outgolfer Erik,

4

Aslında , 21 bayt

"/\"5*SR6*;4α@R4α+3αi

Çevrimiçi deneyin!

Adnan'dan -1 bayt

Açıklama:

"/\"5*SR6*;4α@R4α+3αi
"/\"5*                 "/\" repeated 5 times
      SR               sort and reverse (result: "\\\\\/////")
        6*             repeat string 6 times (forms one row)
          ;4α          copy and push a list containing 4 copies
             @R4α+     push a list containing 4 copies of the reversed string, append to previous list (now we have one row of diamonds)
                  3α   repeat pattern vertically 2 more times
                    i  flatten and implicitly print

"/\"5*SEğik çizgi dizisini oluşturmak gibi bir şey yapabilir misiniz ?
Adnan

@Adnan Harika bir fikir!
Mego

4

Ruby, 46 bayt

Aşağıdaki dizgiyi (70 karakter, bir gerekenden fazla ayarlanmış) oluşturur, sonra örnekleme karakterleri 0..59ile 5..64ondan biri arasında geçiş yapar.

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\

kod ve çıktı

24.times{|i|puts ((?/*5+?\\*5)*7)[i/4%2*5,60]}

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////

ilginç hata (5 yerine 7)

24.times{|i|puts ((?/*5+?\\*5)*7)[i/4%2*7,60]}

/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\
\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\

4

APL, 30 bayt

A←240⍴'/////\\\\\'⋄24 60⍴A,⊖A

APL konusunda oldukça yeniyim (APLX kullanıyorum, ancak bu APL'nin çoğu uygulaması için geçerli olmalı), bu yüzden bu oldukça basit bir çözüm.

Açıklama:

A ← 240 ⍴ '/////\\\\\' ⍝ set A to be a 240 character vector populated with '/////\\\\\'
⋄                      ⍝ statement separator
24 60 ⍴ A,⊖A           ⍝ populate a 24 by 60 character matrix with the concatenation 
                          of A and the reverse of A (⊖A)

4

C, 66 61 bayt

Orlp sayesinde 5 bayt kaydedildi.

Karakter baskısı ile basit karakter. Satır başına 61 karakter, son satırsonu newline (ASCII 10) ve diğerleri /47 ile \92 arasında değişiyor.

i;f(){for(i=1463;i;)putchar(i--%61?i%61/5+i/244&1?92:47:10);‌​}

//call like this
main(){f();}

61 bayt: i;f(){for(i=1463;i;)putchar(i--%61?i%61/5+i/244&1?92:47:10);}.
orlp

@ orlp teşekkürler, daha iyi bir yolun olması gerektiğini biliyordum ama aramaya vaktim olmadı i--.
Seviye Nehri St

3

Python 2,63 bayt

a='\n'.join([('/'*5+'\\'*5)*6]*4);print'\n'.join([a,a[::-1]]*3)

Python 3 için bunu yapın (65 bayt):

a='\n'.join([('/'*5+'\\'*5)*6]*4);print('\n'.join([a,a[::-1]]*3))

1
Bu benim Jelly cevabı ile aynı yöntemi kullanır .
Outgolfer Erik,

Benimkinden daha verimli yöntem, başlamak için
ElPedro 6:16

@ElPedro Temel olarak, sadece bazı dize / dizi manipülasyon yaptım. İşin püf noktası daha büyük bir ip hazırladım: /////\\\\\/////...dört kez, yeni satırlarla ayrılmış
Erik, Outgolfer


3

J, 31 28 19 bayt

4#_60]`|.\5#72$'/\'

kullanım

   4#_60]`|.\5#72$'/\'
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////
\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////

3

Oktav, 50 48 bayt

Anonim işlev:

@()repmat([A=repmat(47,4,5) B=A*2-2;B A ''],3,6)

Burada çevrimiçi deneyebilirsiniz . Basitçe yukarıdaki komutu çalıştırın ve sonra işlevi ile çalıştırın ans().

Temel olarak bu, 4 yüksek ve 5 geniş olan 47 değerinden oluşan bir dizi oluşturur. Daha sonra aynı boyutta olan ikinci bir 92 değer dizisini oluşturur.

İki dizi, bir dama tahtası içinde birleştirilir [A B;B A]. ''Karakter dizeleri dönüştürme zorlamak için de birleştirilmiş.

Son olarak, tüm dizi son boyutu oluşturmak için 3 kez aşağı ve 6 kez tekrarlanır.


  • 2 bayt kaydedildi, teşekkürler @StewieGriffin

isimsiz bir işleve gerek yok; 3 bayt kaydedin.
Tasos Papastylianou

@TasosPapastylianou var, yoksa ans=yastıktan önce basacaktır . Bu fonksiyonun içinde bulunması, cevabı görüntülemek yerine bir değişkene döndürmesi beklendiği gibi bunun etrafında olur.
Tom Carpenter 11

Bu sadece anlambilim. Kederli olacaksanız, bunun yerine görünen 3 satırlık uyarı mesajları hakkında daha fazla endişeleneceğim: p Ayrıca olağan kurallar, doğrudan bir terminal komutundan bir çıktı ya da çağrılabilir olması gerektiğini belirtir. işlev tanıtıcısı. Yani, anonim işlevinizi bir tutamağa atamanız gerekir (veya hesaba katmak zorunda olduğunuz hesaba başka 5 bayt ekleyin ans()). Bu anlamsız, çünkü ans() halaans koşarken baskı yapıyor !
Tasos Papastylianou

@TasosPapastylianou ans(), çağrılabilir bir işlev tutamacıdır, dolayısıyla onu bir şeye atamanıza gerek yoktur, örneğin a=@..., ansbir tutamaç olarak dolaylı olarak atanmıştır . Ayrıca, ans=özellikle döndürülen değerle bir şey yapmamanız ve a eklememeniz istemediğiniz sürece, çalıştırıldığında da yazdırılmaz ;. Bunu yaptıysanız disp(ans()), yalnızca tam çıktı (no ans=) yazdırır . Ancak evet, uyarı can sıkıcı, ancak bu daha önce olmadı, bu yüzden dile özgü değil, tercümana özgü.
Tom Carpenter,

Tamam, aynı fikirde olmayacağız. Gördüğüm gibi, disp(ans())çıktınızı almadan önce güveniyorsanız, cevabınıza 12 bayt eklemeniz gerekir. Benim görüşüme göre, bu sadece oktavın sonucunu sunduğu yoldur ve sorun değil.
Tasos Papastylianou

3

PHP, 73 69 bayt

for($s='/\\';$i<1440;$i++)echo$i%60<1?'
':'',$s[($i/5+($i/240|0))%2];

gösteri

http://ideone.com/z7N1Md


1
69 bayt: for($s='/\\';$i<1440;$i++)echo$i%60<1?'\n':'',$s[($i/5+($i/240|0))%2];( \ngerçek bir yeni satırla değiştirin ). echobir işlev değil, parantez gerektirmez. Ayrıca, echovirgülle ayrılmış olarak birden çok değer alabilir. Bu gerçekten bu parantezlere olan ihtiyacı ortadan kaldırıyor. Ve sonra, sizin için $s[...], en dış hesaplama da parantez içermediğinden parantez gerektirmez []. Kullanımı $s[($i/5+($i/240|0))%2]aynı etkiye sahiptir ve daha kısadır.
Ismael Miguel

Teşekkürler, güncellendi! Yankı hakkında birden fazla parametre kabul etmeyi bile bilmiyordum ^ _ ^
chocochaos

echove printçoklu parametreleri kabul edin. Ancak printbir döngünün artışı, koşulu veya atamasında kullanıldığında birden fazla parametreli parantez gerektirir.
Ismael Miguel

<1İfadeleri değiştirerek echo$i%60?'':' ',, ternerde ifade 3 olarak yeni bir çizgiyi tıraş edebilirsiniz .
Progrock

3

Java 7, 120 bayt

String c(){String r="";for(int i=0;i<1440;r+=(i%60<1?"\n":"")+(i/60%8<4?i%10<5?"/":"\\":i%10<5?"\\":"/"),i++);return r;}

Her şeyi bir döngü içine itti. Brainfuck Beats, görev tamamlandı.

Çevrimiçi görün: https://ideone.com/pZjma3


3

Vim, 44 27 bayt

EDIT @DrMcMoylex sayesinde kazanılan bayt sayısı:

5i\<esc>5a/<esc>0y$5PY4P5x$pY3PyGPP

Orijinal cevap:

Bunun gerçekten bu sitenin kurallarına uyduğundan emin değilim, ancak denemenin eğlenceli olduğunu düşündüm:

i\<esc>59.:s;\v(.{5})\1;\1/////;g<CR>Y4P5x$pY3PyGPP

Bu şekilde ayrıştırılabilir:

i\<esc>                       Insert a \
59.                           Repeat 59 time the insertion
:s;\v(.{5})\1;\1/////;g<CR>   Match 5 characters followed by the same 5 characters
                              And replace them by these 5 characters followed by 5 /
Y4P                           Copy the line and repeat it 4 times
5x$p                          On the current line delete 5 characters and put them 
                              at the end of the line
Y3P                           Copy the line and repeat it 3 times
yG                            Copy all the lines
PP                            Repeat them 2 times

Oh hey statox, siteye hoş geldiniz! Bu tamamen kurallara uyuyor. Çoğunlukla vim de golf oynarım. Sadece bil ki, 5i/<esc>5a\<esc>0y$5P9 bayt kurtarmak için başlangıçta yapabilirsin .
DJMcMayhem

Hey DrMcMoylex (yeni isim? :-)) sizi burada gördüğüme sevindim ve cevabım uyuyor. Ayrıca ipucunuz için teşekkürler, cevabımı düzenleyeceğim
statox

2
Haha, evet bu meydan okuma yüzünden adımı geçici olarak değiştirdim , lol. 30 gün içinde geri değiştireceğim
DJMcMayhem

3

Brainfuck, 168 bayt

++++++[>++++++++<-]>-<+++++++++[>>++++++++++<<-]>>++<<+++++[>>>++<<<-]>>>>+++[>++++[>++++++[<<<<<.....>.....>>>>-]<<<.>>-]++++[>++++++[<<<<.....<.....>>>>>-]<<<.>>-]<-]
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.