Bây giờ tôi biết ABCs của tôi, bạn sẽ không đến và chơi golf với tôi chứ?


46

Viết chương trình hoặc chức năng đưa ra văn bản chính xác này, không phân biệt chữ hoa chữ thường:

A, B, C, D, E, F, G,
H, I, J, K, L, M, N, O, P,
Q, R, S,
T, U, V,
W, X, Y, Z.

(Dựa trên bài hát bảng chữ cái mà nhiều trẻ em Mỹ học để giúp ghi nhớ bảng chữ cái, mặc dù được chỉnh sửa để dễ nén hơn.)

Đầu ra phải trông giống hệt như ở trên (một lần nữa, không phân biệt chữ hoa chữ thường), nhưng có thể chứa khoảng trắng ở mỗi dòng và / hoặc dòng mới. Thông báo thời gian ở cuối.

Đây là mã golf, vì vậy mã ngắn nhất tính bằng byte sẽ thắng.


4
Đối với các ngôn ngữ dựa trên regex, hãy xem xét một cái nhìn rộng 0 .../(?=[HQTW])/
Magic Octopus Urn

29
Tôi nghĩ đó là H, I, J, K, LMNO, P?
Phục hồi lại

7
Không phải dòng cuối cùng kết thúc bằng "Y và Z."?
KM.

@KM. Điều này đã được thảo luận trong hộp cát và chúng tôi đã quyết định gắn bó với phiên bản này để làm cho thử thách bớt phức tạp hơn.
Sản xuất ETH

6
Golf có vẻ nhàm chán. Dế là tốt hơn.
Manoj Kumar

Câu trả lời:


15

Vim, 42 , 40 tổ hợp phím / byte

:h<_<cr>jjYZZP:s/./&, /g<cr>7f r<cr>9;.3;.3;.$ch.

Cảm ơn Lynn và câu trả lời vim tuyệt vời của cô ấy cho mẹo để lấy bảng chữ cái từ trợ giúp.

Cảm ơn RomanGräf vì đã lưu hai byte!

Giải trình:

:h<_<cr>                                      " Open up vim-help
        jj                                    " Move down two lines
          Y                                   " Yank this line (containing the alphabet)
           ZZ                                 " Close this buffer
             P                                " Paste the line we just yanked
              :s/./&, /g<cr>                  " Replace every character with that character followed by a comma and a space
                            7f                " Find the seven space on this line
                               r<cr>          " And replace it with a newline
                                    9;        " Repeat the last search (space) 9 times
                                      .       " Repeat the last edit (replace with a newline)
                                       3;     " Third space
                                         .    " Replace with newline
                                          3;  " Third space
                                            . " Replace with newline

Sau đó, chúng tôi di chuyển cuối dòng $, thay đổi lại một ký tự chvà chèn một dấu chấm.


2
Bạn không được chuyển đổi thành chữ hoa. OP cho biết "văn bản chính xác này, không phân biệt chữ hoa chữ thường".
Roman Gräf

@ RomanGräf Cảm ơn vì tiền boa!
DJMcMayhem

Hà! Lấy bảng chữ cái từ vim giúp là thiên tài! Bạn có biết rằng hoặc bạn đã tìm kiếm nó cho thử thách này?
Christian Rondeau

3
@christianRondeau Mình không nghĩ ra. Lynn đã làm trong câu trả lời này
DJMcMayhem

@ RomanGräf +1 khi sử dụng không được
FantaC

12

05AB1E , 16 byte

A',â79334S£»¨'.J

Giải trình:

A                  # Push the alphabet.
 ',â               # Cartesian product with ','.
    79334S         # Push [7, 9, 3, 3, 4].
          £        # Contigious substring, pushes the substrings [0:7], [7:7+9], 
                     [7+9:7+9+3], [7+9+3:7+9+3+3], [7+9+3+3:7+9+3+3+4].
           »       # Gridify, join the inner arrays with spaces and join those arrays
                     with newlines.
            ¨      # Remove the last character.
             '.J   # Append a '.'-character.

Sử dụng mã hóa CP-1252 . Hãy thử trực tuyến!



11

JavaScript (ES6), 66 65 byte

Đánh bại @Neil là không thể ... Đó là lý do tại sao tôi làm điều đó. :-)

f=(i=10)=>i>34?"z.":i.toString(++i)+","+` 
`[9568512>>i-9&1]+f(i)

Chơi gôn 1 byte nhờ một mẹo từ @LevelRiverSt . Sử dụng String.fromCharCodedài hơn 7 byte:

f=(i=65)=>i>89?"Z.":String.fromCharCode(i,44,i%86%83%80%71?32:10)+f(i+1)

Làm thế nào nó hoạt động

Điều này đệ quy tạo từng ký tự của bảng chữ cái từ ađến y, sử dụng .toString(). Dấu phẩy được thêm vào sau mỗi chữ cái, cộng với một dòng mới nếu 9568512>>i-9&1là 1 hoặc dấu cách khác. Khi đệ quy vượt quá 34, tức là z, hàm chỉ đơn giản trả về "z.".


Đợi cái gì : 3
Hạ cấp

10

Python 2.7, 67 66 63 byte

a=65;exec"print'%c'%a+',.'[a>89]+'\\n'[a%42%39%9^2:],;a+=1;"*26

Dennis đã lưu một byte.


Sử dụng execthay vì fornên tiết kiệm một byte.
Dennis

6

Thạch , 19 18 byte

ØAp”,ṁ79334DR¤GṖ”.

Cảm ơn @Adnan vì đã chơi golf 1 byte!

Hãy thử trực tuyến!

Làm thế nào nó hoạt động

ØAp”,ṁ79334DR¤GṖ”.  Main link. No arguments.

ØA                  Yield "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
  p”,               Cartesian product with ','; append a comma to each letter.
             ¤      Combine the two links to the left into a niladic chain.
      79334D          Decimal; yield [7, 9, 3, 3, 4].
            R         Range; yield [[1, 2, 3, 4, 5, 6, 7], ..., [1, 2, 3, 4]].
     ṁ              Mold; reshape the array of letters with commata like the
                    generated 2D array.
              G     Grid; separate rows by spaces, columns by linefeeds.
               Ṗ    Pop; discard the last comma.
                ”.  Print the previous result and set the return value to '.'.
                     (implicit) Print the return value.

11
31 giây? Dang ...
Sản phẩm ETH

5

JavaScript (ES6), 80 74 byte

_=>[...`ABCDEFGHIJKLMNOPQRSTUVWXYZ`].join`, `.replace(/[HQTW]/g,`
$&`)+`.`

Có thể rút ngắn điều này với atob / btoa nếu bạn có thể tìm ra cách sử dụng mã hóa ISO-8859-1. Chỉnh sửa: Đã lưu 6 byte nhờ @RickHitchcock.


1
@RickHitchcock Vâng, tôi mới nhận ra rằng sau khi đọc câu trả lời của PHP.
Neil

@RickHitchcock Bạn muốn .join`, `gì? Đặt dấu gạch chéo ngược trước backticks. (Vâng, đánh dấu nhận xét là khác nhau, thở dài ...)
Neil


5

R, 83 71 byte

a=rbind(LETTERS[-26],","," ");a[3,7+3*c(0,3:5)]="\n";cat(a,"Z.",sep="")

Hãy thử trực tuyến!

Tạo một ma trận gồm 3 hàng (một hàng có các chữ cái, một có dấu phẩy và một hàng khác có dấu cách hoặc dòng mới).

Chỉnh sửa : Cảm ơn Billywob!


cat(a,sep="")lưu một vài byte:a=rbind(LETTERS,","," ");a[3,7+3*c(0,3:5)]="\n";cat(a[,-26],"Z.",sep="")
Billywob

Cảm ơn! Điều đó đã giúp rất nhiều! Sử dụng [-26]trên LETTERStrực tiếp tiết kiệm một byte khác.
plannapus

4

CJam, 26 byte

'A79333Ab{{',S2$)}*N\}/'.@

Phiên dịch trực tuyến

'A                             Push 'A'
  79333Ab                      Push [7 9 3 3 3]
         {           }/        For each number n in the previous array...
          {      }*              Execute n times...
           ',S                     Push a comma and a space
              2$)                  Copy last letter and increment
                   N\            Place a newline under the letter on top
                       '.@     Push '.' and rotate

4

Brainfuck, 117 byte

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

Bốn dòng đầu tiên đều có một khoảng trắng ở cuối và chương trình giả định các ô 8 bit. Hãy thử trực tuyến!

(Xử lý dòng cuối cùng là khó khăn ...)


4

Perl, 37 byte

Tín dụng cho @Dom Hastings cho giải pháp này (ngắn hơn 3 byte so với của tôi, xem dưới đây).

say+(map"$_, ".$/x/[GPSV]/,A..Y),"Z."

Chạy với -E(hoặc -M5.010) cờ:

perl -E 'say+(map"$_, ".$/x/[GPSV]/,A..Y),"Z."'

Phiên bản trước của tôi, dài hơn 3 byte (tổng cộng 40 byte):

perl -E '$_=join", ",A..Z;s/[HQTW]/\n$&/g;say"$_."'

1
Cách tiếp cận hơi khác nhau (vẫn sử dụng biểu thức chính quy ...) cho 37 byte:say+(map"$_, ".$/x/[GPSV]/,A..Y),"Z."
Dom Hastings

@DomHastings Đẹp một, Làm tốt lắm. Và nó đẹp hơn khi có một tuyên bố thay vì ba! ;-)
Dada

4

JavaScript (ES6), 66 64 byte

_=>`ABCDEFG
HIJKLMNOP
QRS
TUV
WXY`.replace(/./g,"$&, ")+"Z."

Regex khớp với các ký tự nhưng không trả về cỗ xe, vì vậy, bằng cách sử dụng regex thay thế, tôi có thể thêm "," cho mỗi ký tự.

Chỉnh sửa: Đã xóa 2 ký tự nhờ vào ETH Productstions


1
Tôi không biết tại sao những người chơi gôn JS khác lại không tìm giải pháp này trước. Ở đây, có một upvote.
Mama Fun Roll

1
Dang, một trong những tốt đẹp! Tôi nghĩ rằng bạn có thể loại bỏ các parens trong regex nếu bạn thay đổi $1thành $&.
Sản xuất ETH

3

Cheddar, 70 byte

->[65@"71,72@"80,"QRS","TUV","WXYZ"].map(@.chars.join(", ")).vfuse+'.'

Có vẻ như nó không được ngắn hơn thế này. Tôi đã tạo các phiên bản khác sử dụng các phương pháp khá thú vị nhưng đây là phiên bản ngắn nhất

Hãy thử trực tuyến!

Giải trình

->                        // Function with no arguments
  [                       // Array, each item represents a line
   65@"71,                // See below on what @" does
   72@"80,
   "QRS",
   "TUV",
   "WXYZ"
  ].map(                  // On each item...
    @.chars.join(", ")    // Join the characters on ", "
  ).vfuse                 // Vertical fuse or join by newlines
  + '.'                   // The period at the end

Các @"nhà điều hành được sử dụng để tạo ra chuỗi dao động. Nó tạo ra một chuỗi bắt đầu từ mã char bên trái sang mã char bên phải.

Ví dụ, 65là mã char cho A90cho Z. Làm 65 @" 90sẽ tạo ra A đến Z hoặc bảng chữ cái.


3

C, 112 102 81 byte

Cảm ơn cleblanc & LevelRiverSt!

i,c;main(){for(c=64;++c<91;)printf("%c%c%c",c,44+c/90*2,c=="‌​GPSVZ"[i]?++i,10:32)‌​;}

Giải pháp tốt đẹp. bạn có thể lưu một vài byte vì 44 nhỏ hơn 1, 'và 46 1 ít hơn'. '
cleblanc

Không cần phải khai báo int và bạn cũng có thể thực hiện ẩn ints, đây chỉ là 101 bytei,c,d;main(){for(c=65;c<91;++c){if(c-"GPSVZ"[i])d=32;else d=10,++i;printf("%c%c%c",c,c-90?44:46,d);}}
cleblanc

Bạn có thể lấy cách tiếp cận này xuống còn 82 byte : i,c;main(){for(c=64;++c<91;)printf("%c%c%c",c,44+c/90*2,c=="GPSVZ"[i]?++i,10:32);}. Lưu ý rằng bạn có thể dính hoàn toàn mọi thứ giữa ?:toán tử ternary, thậm chí một số biểu thức được phân tách bằng dấu phẩy (nó đánh giá đến biểu thức cuối cùng.)
Level River St

3

Brainfuck, 157 byte

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

Dùng thử trực tuyến


3

Ruby, 56 54 byte

$><<(?A..?Y).map{|c|c+('GPSV'[c]?",
":", ")}.join+"Z."

Dòng đầu tiên kết thúc với một dòng mới.

Chỉnh sửa: lưu hai byte bằng cách thay thế 'A'..'Y'bằng ?A..?Y.


3

Vim, 32 byte

26o<C-V><C-V>64,<Esc>r.V{g<C-A>8Jj9Jj3Jj.j4JcH<C-R>"

Để lại một dòng trống ở cuối, được cho phép, nhưng thật kỳ lạ khi sự vụng về này. Tệ hơn nữa, tôi đang kết thúc ở chế độ chèn. Tôi đã thấy một số người khác làm điều đó ở đây, vì vậy tôi đoán nó được phép? Nó cảm thấy bẩn.

  • 26o<C-V><C-V>64,<Esc>: Cái thứ nhất <C-V>làm cái thứ hai chèn theo nghĩa đen. Các <C-V>64lá này trong bộ đệm sẽ được chuyển thành các điểm mã ASCII, sau đó thành các chữ cái. Dấu phẩy đã có trong.
  • r.: Không bao giờ đi đến cuối cùng một lần nữa, vì vậy hãy làm .ngay bây giờ.
  • V{g<C-A>: Sử dụng gia tăng trực quan để biến tất cả các 64s thành các điểm mã ASCII của chữ in hoa.
  • 8Jj9Jj3Jj.j4J: Dòng tùy ý tham gia. Đầu tiên là 8Jthay 7Jvì bởi vì chúng ta đang xử lý dòng trống. Các 3Js lặp lại đủ điều kiện cho một dấu chấm lặp lại.
  • cH<C-R>": Mọi người thường nghĩ về i<C-R>việc dán chế độ chèn, nhưng nó giống như một macro chế độ chèn. Những thứ như <C-V>65sẽ chạy như thể được gõ và được hiểu là một điểm mã thập phân. Điều này để lại một dòng bổ sung (được phép) ở cuối và ở trong chế độ chèn.

4
nếu bạn gặp vấn đề với chính sách (hoặc thiếu chính sách), hãy đưa nó lên meta, không phải trong câu trả lời.
Mego

2

PowerShell v3 +, 60 78 67 byte

-join(65..90|%{[char]$_+'.,'[$_-le89]+" "+"`n"*($_-in71,80,83,86)})

ĐỒNG Ý. Tôi thực sự đã đọc, hiểu và theo dõi thông số kỹ thuật lần này. Hứa. :CƯỜI MỞ MIỆNG

Đưa mảng 65..90và vòng lặp qua từng phần tử |%{...}. Mỗi lần lặp, chúng tôi đang xây dựng một chuỗi mới bằng cách sử dụng phép nối, lập chỉ mục và nhân.

Đầu tiên, chúng tôi lấy số hiện tại và charbỏ nó để biến nó thành một chữ cái ASCII. Điều đó được kết hợp với một char khác, dựa trên việc lập chỉ mục vào chuỗi '.,'cho dù chúng ta có ở đó 90hay không (nghĩa là tính đến Z.trong khi tất cả các phần còn lại là dấu phẩy). Chuỗi đó được nối với " "không gian để phân tách các chữ cái và phép nhân chuỗi "`n"dựa trên giá trị Boolean cho dù phần tử hiện tại có phải là -inmảng được chỉ định hay không (nghĩa là chúng ta có cần nối vào một ký tự dòng mới hay không). Chuỗi kết quả được để lại trên đường ống.

Các chuỗi đó được gói gọn trong parens và -joined lại với nhau thành một chuỗi mới, sau đó cũng được để lại trên đường ống và ẩn Write-Outputở cuối in kết quả. Vì chúng tôi có `ntrong chuỗi, nó tự động được chuyển đổi thành dòng mới khi in.

Yêu cầu v3 + cho -intoán tử. Có một khoảng trống trên mỗi dòng, đó là OK theo thông số kỹ thuật thách thức.

Thí dụ

PS C:\Tools\Scripts\golfing> .\now-i-know-my-abc.ps1
A, B, C, D, E, F, G, 
H, I, J, K, L, M, N, O, P, 
Q, R, S, 
T, U, V, 
W, X, Y, Z. 

1
Khoảng thời gian cuối bị thiếu.
Hạ cấp

Không nên có dấu phẩy ở cuối bốn dòng đầu tiên?
Neil

@Neil Hấp dẫn tốt. Tôi sẽ xóa cái này cho đến khi tôi thực sự có thể hiểu thông số kỹ thuật.
admBorkBork

2

PHP, 62 byte

<?=preg_filter("# ([HQTW])#","\n$1",join(", ",range(A,Z)));?>.

chỉ để so sánh 87 byte

<?="A, B, C, D, E, F, G,\nH, I, J, K, L, M, N, O, P,\nQ, R, S,\nT, U, V,\nW, X, Y, Z.";

Bạn có thể lưu một byte bằng cách sử dụng một dòng mới thực tế thay cho \n.
Alex Howansky

Khi bạn được phép theo dấu khoảng trắng trên mỗi dòng, bạn có thể lưu một byte bằng cách thả khoảng trắng khỏi biểu thức chính quy. Ngoài ra, bạn có thể lưu một byte bằng cách sử dụng ereg numplace (không dùng nữa và loại bỏ trong 7.0) vì nó cho phép bạn bỏ qua các dấu phân cách trong biểu thức chính quy.
dùng59178

@ user59178 Tôi có thể tiết kiệm 3 Byte nhưng tôi sẽ tránh điều này. Có không gian dấu được cho phép. Tôi có thể viết dưới dạng regex "# (?=[HQTW])#"và rút ngắn sự thay thế thành "\n"cùng byte và làm cho nó rõ ràng hơn. Để sử dụng một chức năng không dùng nữa có thể gây nhầm lẫn cho người mới bắt đầu. Và sự phá vỡ vật lý có thể giải thích sai trên các hệ thống khác sau đó là Unix. Bạn có thể đăng nó như là sugesstion của riêng bạn.
Jörg Hülsermann

2

MATL, 38 29 byte

9 byte được lưu nhờ vào @Luis!

1Y2X{', '&Zc46h1[CEII]I*11hY{

Hãy thử trực tuyến!

Giải trình

1Y2     % Push the upper-case alphabet to the stack
X{      % Break the character array into a cell array (similar to a list)
        % where each element is a letter
', '&Zc % Combine back into a string with ', ' between each element
46h     % Append '.' (via ASCII code) to the end of the string
1       % Push the number 1
[CEII]  % Push the array: [7, 9, 3, 3]
I*      % Multiply this array by 3: [21, 27, 9, 9]  
llh     % Append an 11 to this array: [21, 27, 9, 9, 11] 
Y{      % Break our comma-separated list of characters into groups of this size
        % Implicitly display the result

2

R, 146 byte

L=LETTERS
f=function(x,y=""){paste(x,collapse=paste0(", ",y))}
cat(f(c(f(L[1:7]),f(L[8:16]),f(L[17:19]),f(L[20:22]),f(L[23:26])),"\n"),".",sep="")

Giải trình:

LETTERSđược xác định trước cho chữ in hoa.
Các fchức năng là cho concatenating vector x trên ,với thêm y(sử dụng cho dòng mới).
Con mèo được sử dụng khi nó in \nnhư dòng mới. fđược gọi trên các chữ cái để tạo thành các hàng và sau đó trên các hàng một lần nữa để tạo thành toàn bộ đầu ra.

Có thể chơi gôn - Tôi không thích nhiều cuộc gọi của ...


3
Đầu ra thô chỉ dài 77 byte. In trực tiếp có thể ngắn hơn ...
Lynn

@Lynn, tôi biết, nhưng ở đây tôi thấy một số khả năng chơi gôn.
pyjama

2

CJam, 31 byte

'[,65>", "*7933Ab{3*/(\:+}%N*'.

Giải trình:

'[,65>                             push uppercase alphabet
      ", "*                        ", " between all letters
           7933Ab                  push [7 9 3 3]
                 {3*/(\:+}%        slices of lengths 21, 27, 9, 9
                           N*'.    join slices with newlines, add final "."

Dùng thử trực tuyến


2

Julia, 71 byte

f()=join(join.(['A':'G','H':'P',"QRS","TUV","WXYZ"],[", "]),",\n")*"."

Yêu cầu 0,5 hoặc tốt hơn để phát sóng .()


Một mặt, điều này hiện không có dấu chấm và không cần printđịnh nghĩa / hàm? Mặt khác, không lưu joinvào một biến sẽ tiết kiệm một byte.
Sp3000

Wrt xấu của tôi thiếu ".", Và cảm ơn cho con trỏ trên join. Tôi đã bỏ lỡ. Chạy chương trình trả về chuỗi. Không phải là một chương trình trả về một chuỗi một đầu ra hợp lệ? (Hoặc chỉ có các chức năng được phép trả lại những thứ được tính là đầu ra. Nếu vậy f()=thì ngắn hơn print())
Lyndon White

Chắc chắn, f()=hoặc ()->là tốt - tôi nghĩ ý tưởng là các chức năng có thể được gán và có thể được chạy nhiều lần, và ngược lại đây sẽ là một đoạn mã.
Sp3000

2

Cheddar, 57 byte

->(65@"90).sub(/[GPSV]/g,"$0
").sub(/[^Z\n]/g,"$0, ")+"."

Hãy thử trực tuyến! Đẹp không Đó là một hình chữ nhật đẹp.

Hai thay thế regex. (65@"90)là bảng chữ cái viết hoa, .sub(/[GPSV]/g,"$0\n")thay thế GPSVbằng chính nó và "\n", .sub(/[^Z\n]/g,"$0, ")thay thế tất cả các dòng mới và Zký tự bằng chính nó ", ", và "."thêm một cuối cùng ..


1
Kỹ thuật tốt, và công việc tốt vượt trội so với Downgoat;)
Sản phẩm điện tử

2

Japt, 24 byte

;B¬qJ+S r"[HQTW]"@R+XÃ+L

Kiểm tra nó trực tuyến!

Làm thế nào nó hoạt động

;                        // Reset various variables. B is set to "ABC...XYZ", J is set to ",", and L is set to ".".
 B¬                      // Take the uppercase alphabet and split into chars.
   qJ+S                  // Join with ", ".
        r"[HQTW]"        // Replace each H, Q, T, or W with
                 @R+XÃ   //   a newline plus the character.
                      +L // Append a period to the result.
                         // Implicit: output last expression

2

Java, 116 109 105 104

String f(){String s="";for(char c=65;c<91;)s=s+c+(c>89?46:',')+("GPSV".indexOf(c++)<0?' ':10);return s;}

Ung dung:

String f() {
  String s = "";
  for (char c = 65; c < 91;) {
    s = s + c
      + (c > 89 ? 46 : ',')
      + ("GPSV".indexOf(c++) < 0 ? ' ' : 10);
  }
  return s;
}

Bạn có thể đánh gôn bằng 7 byte: Tất cả ba ||đến |(-3); đổi c==90thành c>89(-1); đổi '.'thành 46(-1); và thay đổi '\n'thành 10(-2).
Kevin Cruijssen

@KevinCruijssen cảm ơn, tôi đã thử sử dụng số thập phân nhưng có vẻ như nếu tôi thay thế cả hai hằng ký tự trong một ternary thì nó thay đổi kiểu biểu thức thành số nguyên, nó đã phá vỡ nó. Thay đổi một hằng số làm việc và vắt ra một vài byte.

2
@KevinCruijssen cảm ơn. Nếu tôi có đủ cà phê trong tôi, tôi sẽ nhớ tự cập nhật nó.

1
Thêm 2 byte: "GPSV".contains(""+c)thay vì c==71|c==80|c==83|c==86.
TNT

1
@TNT Tôi đã có thể làm tốt hơn một chút. Tôi biết rằng một phần có thể được cải thiện, nhờ vào việc đẩy đúng hướng.



1

Bình thường, 25 byte

+Pjmj\ dc*G\,j94092 23)\.

Một chương trình in kết quả thành STDOUT.

Dùng thử trực tuyến

Làm thế nào nó hoạt động

+Pjmj\ dc*G\,j94092 23)\.  Program. Input: none
          G                Yield string literal'abcdefghijklmnopqrstuvwxyz'
         * \,              Cartesian product of that with ',', yielding a list of
                           characters with appended commas
             j94092 23)    Yield the integer 94092 in base-23, giving [7, 16, 19, 22]
        c                  Split the comma-appended character list at those indices
   mj\                     Join each element of that on spaces
  j                        Join that on newlines
 P                         All but the last element of that, removing trailing ','
+                      \.  Append '.'
                           Implicitly print
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.