In bảng chữ cái bốn lần


37

Chương trình phải in bảng chữ cái bốn lần: lần thứ nhất theo thứ tự bảng chữ cái thông thường, lần thứ hai theo thứ tự bàn phím qwerty, lần thứ ba theo thứ tự bàn phím dvorak và cuối cùng theo thứ tự bảng chữ cái ngược. Đầu ra phải giống như thế này:

abcdefghijklmnopqrstuvwxyz
qwertyuiopasdfghjklzxcvbnm
pyfgcrlaoeuidhtnsqjkxbmwvz
zyxwvutsrqponmlkjihgfedcba

Đầu ra không phân biệt chữ hoa chữ thường và bạn có thể thêm hoặc bỏ qua dòng mới hoặc dấu cách bất cứ nơi nào bạn muốn.

Bắt : chương trình phải nhỏ hơn 104 ký tự, hay nói cách khác, nhỏ hơn độ dài của bảng chữ cái gấp bốn lần.

Tôi sẽ chấp nhận câu trả lời với mã ngắn nhất, trừ khi tôi thấy điều gì đó thực sự thông minh hoặc thú vị mà tôi ấn tượng hơn.

EDIT: Tôi sẽ chấp nhận câu trả lời ngắn nhất vào Thứ Tư, 27/4/2011.

EDIT2: Và người chiến thắng là (như thường lệ) Golfscript trong 64 ký tự! Vị trí thứ hai , chỉ đứng sau ba ký tự, cũng thuộc về Golfscript, với 67 ký tự, tiếp theo là Bash ở vị trí thứ ba với 72 ký tự.

Nhưng có một vài cái khác tôi muốn đề cập, chẳng hạn như cái này , tùy theo định nghĩa của bạn, chỉ sử dụng 52 "ký tự", và cái này mà anh ấy đã viết nó bằng ngôn ngữ do anh ấy tạo ra.

Có một vài người đã phá vỡ một quy tắc bất thành văn và không đủ điều kiện, nhưng tôi sẽ đề cập đến họ chỉ vì cách suy nghĩ của họ mà không có hộp.


11
Cân nhắc sử dụng tiền thưởng cho một câu trả lời khiến bạn ấn tượng. Tôi nghĩ rằng việc chấp nhận một câu trả lời trong một mã golf phải luôn là tiêu chí tự nhiên (tức là độ dài).
Joey

Tôi bị mất khi sử dụng Tcl: tio.run/ Kẻ
sergiol

Câu trả lời:


16

Python 2, 97 ký tự

q="qwertyuiopasdfghjklzxcvbnm"
a="".join(sorted(q))
print a,q,"pyfgcrlaoeuidhtnsqjkxbmwvz",a[::-1]

Sắp xếp QWERTY và chuyển đổi trở lại từ danh sách thành chuỗi ngắn hơn chính bảng chữ cái! *

Một tùy chọn khác để tạo bảng chữ cái có ít ký tự hơn bảng chữ cái:

print map(chr,range(65,91))

Mặc dù điều này in ra một danh sách các ký tự Python.

Không có nhiều việc phải làm ở đây theo cách nén dữ liệu; kẹt các chữ cái thành 5 bit chỉ tiết kiệm 39 ký tự, điều này không nhiều nếu bạn phải giải nén chúng (và bạn vẫn phải biểu thị các byte theo nghĩa đen); có vẻ như zlib (giống như một ví dụ) tiết kiệm ít hơn 20 byte; mã hóa chuỗi dưới dạng một danh sách các vùng đồng bằng sang chữ cái tiếp theo vẫn mất 5 bit cho mỗi delta, bởi vì lớn nhất trong chuỗi này là -22:

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
 1, 1, 1, 1, 1, 1, 1, -9, 6, -18, 13, 2, 5, -4, -12, 6, 
 1, -15, 18, -15, 2, 1, 2, 1, 14, -2, -21, 19, -20, 12, 
 -1, 3, 9, -19, 1, -4, 15, -6, -11, 14, -10, 16, -12, -5, 
 4, 12, -6, 5, -2, -7, 1, 13, -22, 11, 10, -1, 4, 0, -1, 
 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]

* Mặc dù chỉ một chút.


1
Python 3.5:q="qwertyuiopasdfghjklzxcvbnm";a=sorted(q);print(*a,q,"pyfgcrlaoeuidhtnsqjkxbmwvz",*a[::-1])
Veedrac

15

PHP, 100 byte

Theo ISO 8859-1:

<?=base64_encode("i·yø!9%z)ª»-ºü1Ë:°z»rº*)jÇ_ä<\½¹æ§'àr¹Z¡ë¢vg²¨äŹ°¿<òÇî¶Êê¦æHâÞuÆÚ");

Để tái sản xuất một cách đáng tin cậy,

printf '<?=base64_encode("' > 4times.php
printf abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcba | base64 -d >> 4times.php
printf '");' > 4times.php

5
Đó là một cách thú vị để làm điều đó. Tất cả những cái khác là các biến thể trên cùng một ý tưởng, nhưng cái này thì hơi khác một chút.
Peter Olson

Tôi không nghĩ rằng điều này nên được tính; câu hỏi được gắn thẻ "Độ phức tạp Kolmogorov" và chỉ định "104 ký tự" có nghĩa là chúng ta nên phân biệt đối xử về những gì chúng ta coi là một nhân vật. Mặt khác, tôi sẽ chỉ định nghĩa mã hóa ký tự của riêng mình bằng một ký tự duy nhất ánh xạ tới ASCII cho toàn bộ chương trình giải quyết vấn đề và sau đó giải mã điều đó.
Adrian Petrescu

2
@Adrian Petrescu: điều đó dễ dàng được giải quyết bằng cách yêu cầu mã hóa đã tồn tại tại thời điểm thử thách được đặt ra.
Lowjacker

@Lowjacker Chắc chắn, nhưng đó có vẻ là một cách khá độc đoán để giải quyết vấn đề này.
Adrian Petrescu

5
@Adrian, Ưu điểm của unicode khi sử dụng ký tự so với byte đã được thừa nhận từ lâu. Theo tôi, không có ý nghĩa gì khi câu hỏi được gắn thẻ Kolmogorov trong khi hỏi nhân vật. Nó sẽ được đếm byte. Tùy thuộc vào người hỏi câu hỏi phải cẩn thận về các điều khoản này.
gnibbler

10

Ruby 1.9, 88 87 84 80

puts b=[*?a..?z],:qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz,b.reverse

10

Bash, 82

echo {a..z}
echo qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz
echo {z..a}

9

Con trăn 97 96 "ký tự"

Sử dụng từ "ký tự" một cách tự do, đây là một số con trăn sử dụng các ký tự unicode 16 bit để mã hóa 3 ký tự bình thường mỗi ký tự. Chương trình có tổng cộng 96 ký tự, 35 trong số đó là các ký tự unicode kỳ lạ nhất tôi từng thấy.

for i in range(104):print chr((ord(u'ࠠᒃ⃦ⵉ��割廕��匓�เ᳅ⵉૹ�懬ࣅű傎ᱨ�⤰〷�弙劶��ⶍKᓇࡤ^A'[i/3])>>i%3*5&31)+97),

Tôi không chắc chắn rác unicode sẽ xuất hiện chính xác, vì vậy đây là chương trình python để tạo chương trình python ở trên:

#!/usr/bin/python                                                                                                                                                                 
import codecs
f=codecs.open('alpha.py','w','utf-8')
f.write('#!/usr/bin/python\n')
f.write('# coding=utf-8\n')
f.write('for i in range(104):print chr((ord(u\"')
S='''abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcbaa'''
for i in xrange(0,104,3):
 n=32*32*(ord(S[i+2])-97)+32*(ord(S[i+1])-97)+ord(S[i+0])-97
 f.write(u'%c'%n)
f.write('"[i/3])>>i%3*5&31)+97),\n')

9

Bash, 72

echo {a..z} qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz {z..a}

EDIT: đã xóa tr -d .

Tín dụng: Alexander, Roger.


2
Các quy tắc cho phép bạn bỏ qua |tr -d ' ', lưu 10 ký tự và biến phiên bản này thành một nhà lãnh đạo tại thời điểm viết :-)
Alexander Gladysh

@Alexander, Cool ;-) không biết điều đó. Cảm ơn @Roger mặc dù đã chỉ cho tôi đi đúng hướng.
asoundmove

Tôi đã cố gắng tìm một giải pháp tao nhã hơn với một số đa thức có lũy thừa các số nguyên tố và modulo (hay nói cách khác là tìm một hàm hoán vị đủ đơn giản hoạt động theo chuỗi đó) ... nhưng không thể sử dụng loại thời gian cần thiết cho một giải pháp như vậy, vì vậy tôi sẽ để nó ở đó. Thêm vào đó, thật khó để diễn đạt chính xác.
asoundmove

9

Golf, 64 ký tự

"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz".$2%\1$-1%

Lưu ý: cũng 64 byte. Trên thực tế, chơi với Unicode và thay đổi cơ sở có vẻ phản tác dụng vì basetừ khóa quá dài.


6

Windows PowerShell, 89

Không đặc biệt tốt, nhưng ít nhất ngắn hơn chuỗi đầu ra:

[char[]](65..90)
'qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz'
[char[]](90..65))

Bây giờ tôi thấy rằng có một sự thư giãn trên khoảng trắng. Và ngắn hơn một chút, nếu tôi bỏ qua trường hợp mà tôi được phép.


2
Bạn đã có thêm một )ở đó. Nên là 88.
Iszi

5

Golfscript, 76 , 67 ký tự

123,97>+."qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz"\-1%

Sử dụng 123,97>+để tạo bảng chữ cái ban đầu.
Ventero

Cảm ơn Ventero, tôi thực sự đã thấy điều đó trong bài viết khác của bạn vào ngày khác.
BẠN

4

CI - 92 ký tự

'a(1p'z((,0(4d)(.$)<)$)(0c0c.1+2p$.)>)$)qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz

CI ("Trình biên dịch / Trình thông dịch") là ngôn ngữ dựa trên ngăn xếp đơn giản mà tôi đã tạo cho thử thách "Phiên dịch tự phiên dịch" ( liên kết để trả lời ). Tôi đã đăng câu trả lời đó khoảng hai giờ trước khi thử thách này được đăng. Đó không phải là GolfScript (mà tôi vẫn chưa học được), vì mục tiêu của tôi là làm cho trình thông dịch ngắn lại.

Chương trình này phải được chuyển đến trình cithông dịch thông qua đầu vào tiêu chuẩn. Trình thông dịch xử lý các ký tự sau khi kết thúc )làm đầu vào cho chương trình. Ngôn ngữ của tôi không hỗ trợ chuỗi ký tự, vì vậy stdin đang thay thế.


3

Python 2.7.X - 103 ký tự trớ trêu ...

a='abcdefghijklmnopqrstuvwxyz'
print a,'qwertyuiopasdfghjklzxcvbnm pyfgcrlaoeuidhtnsqjkxbmwvz',a[::-1]

Hóa ra, việc tạo bảng chữ cái trong python cần nhiều ký tự hơn mã hóa cứng. Cũng như nhập bảng chữ cái. Đôi khi phải yêu một ngôn ngữ tập trung dễ đọc.


1
Bạn không cần khoảng trắng giữa các chuỗi QWERTY và DVORAK, nó sẽ ít hơn 1 ký tự.
Lowjacker

đúng, nhưng python tự động nối thêm một khoảng trống giữa mỗi mục trong danh sách in được phân tách bằng dấu phẩy, vì vậy khoảng trống là sự hy sinh cá nhân của tôi để thay đổi đầu ra có thể đọc được.
arrdem

Bạn có thể sử dụng +thay vì ,và tiết kiệm không gian đó.
Martin Uting

3

C - 133 ký tự

Phiên bản rút gọn từ Casey:

main(i){char a[105];strcpy(a+26,"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz");for(i=0;i<26;)a[i]=a[103-i]=i+++65;puts(a);}

Đánh trắng:

main(i) {
    char a[105];
    strcpy(a+26, "qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz");
    for(i=0;i<26;)
        a[i]=a[103-i]=i+++65;
    puts(a);
}

Đầu ra chuyển đổi

Đây là một phiên bản mà đầu ra chuyển đổi, cho vui. 134 ký tự.

main(i){char*a="qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz";for(i=0;i<26;i++,a++)printf("%c%c%c%c\n",i+65,*a,*(a+25),90-i);}

Đánh trắng:

main(i){
  char*a="qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz";
  for(i=0;i<26;i++,a++)
    printf("%c%c%c%c\n",i+65,*a,*(a+25),90-i);
}

Bản in:

AqmZ
BwpY
CeyX
DrfW
EtgV
FycU
GurT
HilS
IoaR
JpoQ
KaeP
Lsu
MdiN
NfdM
Ôi
PhtK
QjnJ
RksI
SlqH
TzjG
UxkF
VcxE
WvbD
XbmC
YnwB
ZmvA

Vẫn không phù hợp, tất nhiên.
Alexander Gladysh

1
bằng cách khai báo ilà toàn cục và đặt strcpy(...)vào khối đầu tiên của vòng lặp for, bạn nhận được 129. vẫn còn quá nhiều.
bebe

3

J

x=:(97+/i.26){a.
x
261329910883437428257896643x A.x
247073478763191548160234722x A.x
(_1+/-i.26){x

Trải nghiệm đầu tiên của tôi với J. Ý tưởng chỉ đơn giản là sử dụng số chính tắc (từ điển) của hoán vị cần thiết; Thật không may, điều này cần nhiều ký tự hơn mã hóa cứng. Nhưng nếu người ta có thể tìm thấy một số biểu thức số học (sử dụng sức mạnh và không có gì) mang lại các con số ma thuật, nó có thể được rút ngắn.


261329910883437428257896643 có hệ số nguyên tố 7 * 601 * 991 * 213987797 * 292923318887 vì vậy không có quyền hạn trong cái này.
Jerry Jeremiah

3

Python, 90 ký tự unicode

#coding:u8
print u"扡摣晥桧橩汫湭灯牱瑳癵硷穹睱牥祴極灯獡晤桧歪穬捸扶浮祰杦牣慬敯極桤湴煳歪扸睭究祺睸當獴煲潰浮歬楪杨敦捤慢".encode("u16")[2:]

chạy tại ideone - http://ideone.com/R2dlI hoặc codepad - http://codepad.org/lp77NL9w


2
Trên thực tế, nó chỉ có 52 "ký tự".
Peter Olson

3

Javascript 139 121

Mới:

q='qwertyuiopasdfghjklzxcvbnm'
a=q.split('').sort()
alert(a.join('')+q+'pyfgcrlaoeuidhtnsqjkxbmwvz'+a.reverse().join(''))

cũ:

a=[]
a[26]='qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz'
for(i=0;i<26;i++)a[i]=a[52-i]=String.fromCharCode(i+65)
alert(a.join(''))

Bạn cũng có thể có 121 với:alert((a=(q='qwertyuiopasdfghjklzxcvbnm').split('').sort()).join('')+q+'pyfgcrlaoeuidhtnsqjkxbmwvz'+a.reverse().join(''))
WallyWest

2

Lua - 111 ký tự

Nhịp đập C và C ++! :-)

print'abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcba'

Phiên bản "thông minh" trong Lua

129 ký tự

q='qwertyuiopasdfghjklzxcvbnm'a={q:byte(1,-1)}table.sort(a)a=q.char(unpack(a))print(a,q,'pyfgcrlaoeuidhtnsqjkxbmwvz',a:reverse())

Đánh trắng:

q='qwertyuiopasdfghjklzxcvbnm'
a={q:byte(1,-1)}
table.sort(a)
a=q.char(unpack(a))
print(a,q,'pyfgcrlaoeuidhtnsqjkxbmwvz',a:reverse())

2

C - 163 135 ký tự

Điều này không đáp ứng các yêu cầu vì nó có hơn 104 ký tự, nhưng thật thú vị khi thực hiện. Có lẽ ai đó sẽ có một số gợi ý.

main(i){char a[105];strcpy(&a[26],"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz");for(i=0;i<26;)a[i]=a[103-i]=i+++65;puts(a);}

Điều này biên dịch trên GCC 4.5.1 (những người khác chưa được kiểm tra). Yay vì đã bỏ qua #incolees, kiểu trả về và khai báo biến! Hardcoding sẽ dẫn đến một chương trình ngắn hơn, nhưng điều đó không vui chút nào.

Phiên bản trắng:

main(i) {                                                                                   
    char a[105];                                                                        
    strcpy(&a[26], "qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz");                 
    for(i=0;i<26;)                                                                          
        a[i]=a[103-i]=i+++65;                                                               
    puts(a);                                                                                
}

C - 124 122 khập khiễng

Đây là phiên bản mã hóa khập khiễng và nó vẫn không bị cắt.

main(){puts("abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcba");}

Sử dụng puts()thay vì printf trong trường hợp thứ hai - ít hơn 2 ký tự.
Alexander Gladysh

Và thay thế whilebằng puts(a);trong trường hợp đầu tiên, thả *p=a; - 138 ký tự thay vì 163.
Alexander Gladysh

Gợi ý tuyệt vời! Tôi đã hoàn toàn quên mất puts. Thay đổi.
Casey

2

PHP 88 byte

<?=$a=join(range(a,z)),~Žˆš‹†Š–žŒ›™˜—•”“…‡œ‰‘’†™˜œ“žšŠ–›—‹‘ŒŽ•”‡’ˆ‰…,strrev($a);

2

J - 69 char

'pyfgcrlaoeuidhtnsqjkxbmwvz'(,~|.)&(,\:~)'mnbvcxzlkjhgfdsapoiuytrewq'

Giải trình:

  • (,\:~) y- Sắp xếp ytheo thứ tự giảm dần ( \:~) và nối thêm ( ,) vào y.

  • x (,~|.) y- Đảo ngược ( |.) yvà nối nó vào phía trước x.

  • x F&G y- Thực thi (G y) F (G y), nghĩa là, thực hiện Ftrên kết quả của việc áp dụng Gcho các đối số.

Vì vậy, tất cả cùng nhau, chúng ta nối thêm bảng chữ cái, ngược lại, vào cả chuỗi Dvorak và chuỗi QWERTY ngược, sau đó đảo ngược QWERTY / bảng chữ cái một và đặt nó trước bảng chữ cái Dvorak / bảng chữ cái.


2

Bash, 64

Tôi đến bữa tiệc rất muộn, nhưng tôi có giải pháp 64 ký tự. Chương trình cần được lưu vào đĩa để làm việc

echo {a..z} $(sed 1d $0|base64) {z..a};exit
««·+¢¢–¬uø!ŽIsÅËÛžjr~+•ªº'a¶{*ŽL[›ó

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

{a..z}{z..a}khá tự giải thích, nhưng về cơ bản chỉ in mỗi ký tự trong phạm vi tương ứng.

$(sed 1d $0|base64) xuất chương trình, bỏ qua dòng đầu tiên, sau đó chuyển qua bộ mã hóa base64 (như một số ví dụ khác đã làm).

Lý do này ngắn hơn các ví dụ tương tự khác ...

... là bởi vì {a..z}phạm vi ngắn hơn mã hóa base64, vì vậy tôi chỉ cần mã hóa base64 một nửa chuỗi. Và bởi vì tôi đang đọc dữ liệu nhị phân từ tệp thay vì lưu trữ nó trong một chuỗi, tôi không cần phải thoát bất kỳ ký tự nào trong mã.

Cách tạo lại tập lệnh này:

Nếu mã không sao chép / dán chính xác từ Stack Exchange vào trình soạn thảo văn bản của bạn thì hãy chạy đoạn mã sau trong dòng lệnh của bạn (shell agnellect):

echo 'echo {a..z} $(sed 1d $0|base64) {z..a};exit' > alphabetgolf
echo 'qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz' | base64 -d >> alphabetgolf

Sau đó chạy:

bash alphabetgolf

2

05AB1E , 25 byte

AžW.•8t”a$äJÚ₁вƒüu¯Cê•AR»

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

Giải trình

A                          # Push alphabet                    
 žW                        # Push qwerty string
   .•8t”a$äJÚ₁вƒüu¯Cê•     # Push compressed dvorak string
                      AR   # Push reversed alphabet
                         » # Join entire stack with newlines

1

C ++

Thật buồn khi cách ngắn nhất để làm một điều gì đó bằng ngôn ngữ là mã hóa nó.

#include <iostream>

int main()
{
 std::cout<<"abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcba";
}

Bạn không cần phải xuất nguồn cấp dữ liệu.
Lowjacker

@Low: Đừng! Tôi đã quên loại bỏ những thứ đó khi tôi thực hiện ngắt dòng tôi nhận ra mình không cần. Cảm ơn đã chỉ ra rằng.
Giăng

Đây là một giải pháp rất rõ ràng và nó vượt qua yêu cầu về độ dài tối đa.
Peter Olson

std::coutlà ngắn hơn using namespace std, và bạn có thể bỏ qua void.
Alexander Gladysh

@Alex: Cảm ơn bạn đã chỉ ra điều đó.
Giăng

1

J (77)

(,|.@(26&{.))(,~/:~@(26&{.))'qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz'

Cạo sạch 3 ký tự bằng cách sử dụng một biến:

(,|.@a)(,~/:~@(a=.26&{.))'qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz'

Cạo sạch thêm 2 ký tự bằng cách sử dụng cách tiếp cận cấp giá trị:

(|.a),~t,~a=./:~26{.t=.'qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz'

1

Haskell (95)

main=putStr$['a'..'z']++"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz"++['z','y'..'a']

Perl (51)

Không có quy tắc nói rằng tôi không thể.

use LWP::Simple;print get("http://bit.ly/fGkflf");

1
Xem danh sách các sơ hở tiêu chuẩn .
boboquack

1

Hỏi (68)

.Q.a,"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz",(|:).Q.a

Đầu ra:

"abcdefghijklmnopqrstuvwxyzqwertyuiopasdfghjklzxcvbnmpyfg     
crlaoeuidhtnsqjkxbmwvzzyxwvutsrqponmlkjihgfedcba"

Đã cố gắng tìm một cải tiến về mã hóa cứng giữa hai nhưng không đưa ra được một.


1

K - 69 char

b,a,|b:a@<26#a:"qwertyuiopasdfghjklzxcvbnmpyfgcrlaeouidhtnsqjkxbmwvz"

Giải trình:

  • 26#a:- Gán hai bố trí bàn phím cho a, sau đó lấy 26 ký tự đầu tiên.

  • b:a@<- Sắp xếp avà gán nó cho b: <cung cấp hoán vị cho một sắp xếp tăng dần, và @cho phép chúng tôi lập chỉ mục ađể sắp xếp nó.

  • b,a,|- Nối vào một hàng b, sau đó a, ngược lại ( |) của b.


1

Bình thường, 57

G"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz"VG

Bảng chữ cái, chuỗi, bảng chữ cái đảo ngược. G là bảng chữ cái. In là ẩn.


1

APL Dyalog , 60 byte

⎕A'QWERTYUIOPASDFGHJKLZXCVBNMPYFGCRLAOEUIDHTNSQJKXBMWVZ',⌽⎕A

Bản in:

  ABCDEFGHIJKLMNOPQRSTUVWXYZ  QWERTYUIOPASDFGHJKLZXCVBNMPYFGCRLAOEUIDHTNSQJKXBMWVZ ZYXWVUTSRQPONMLKJIHGFEDCBA

Được phép theo OP:

Đầu ra không phân biệt chữ hoa chữ thường và bạn có thể thêm hoặc bỏ qua dòng mới hoặc dấu cách bất cứ nơi nào bạn muốn.


1

Jelly, 36 byte (không cạnh tranh)

Øa;Øq;“pyfgcrlaoeuidhtnsqjkxbmwvz”;U

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

Giải trình:

Øa;Øq;“pyfgcrlaoeuidhtnsqjkxbmwvz”;U    |
Øa;                                     | alphabet
   Øq;                                  | list with all rows of the qwerty keyboard
      “pyfgcrlaoeuidhtnsqjkxbmwvz”;     | string
                                   U    | reverse

1

05AB1E , 60 59 byte

AÂ"qwertyuiopasdfghjklzxcvbnm""pyfgcrlaoeuidhtnsqjkxbmwvz"»

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

- đẩy bảng chữ cái chia đôi.

"qwertyuiopasdfghjklzxcvbnm""pyfgcrlaoeuidhtnsqjkxbmwvz" - Đẩy qwerty và drovak.

» - In chồng.

05AB1E , 57 byte (Nếu bạn không quan tâm đến ngẫu nhiên \ n)

AÂ"qwertyuiopasdfghjklzxcvbnmpyfgcrlaoeuidhtnsqjkxbmwvz"»

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


Trong ví dụ đầu tiên, bạn có thể lưu một byte bằng cách thay thế ""bằng một dòng mới.
Neil A.
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.