İnsanların düzenli olarak karşılaştıkları 97 ASCII karakteri var. Dört kategoriye ayrılırlar:
Harfler (toplam 52)
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
Rakamlar veya Rakamlar (toplam 10)
0123456789
Semboller ve Noktalama işaretleri (toplam 32)
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
Boşluk (toplam 3)
Boşluk
\t
ve yeni satır\n
. (Yeni satır değişkenlerini\r\n
bir karakter gibi ele alırız .)
Kısaca, sırasıyla bu kategorilere L, N, S ve W diyeceğiz.
İstediğiniz harflerin 24 permütasyonundan birini seçin LNSW
ve kendiniz için bir programlama şablonu oluşturmak için süresiz olarak tekrarlayın.
Örneğin, permütasyonu seçebilirsiniz NLWS
, böylece programlama şablonunuz şöyle olacaktır:
NLWSNLWSNLWSNLWSNLWS...
Bu şablonu temel alan bir program veya işlev yazmanız gerekir, burada:
Her
L
biri herhangi bir harfle (ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
) değiştirilir.Her
N
biri herhangi bir sayı (0123456789
) ile değiştirilir .Her
S
biri herhangi bir sembolle (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
) değiştirilir.Her
W
biri herhangi bir boşluk karakteri (\t\n
) ile değiştirilir .
Temel olarak, kodunuz modeli takip etmelidir
<letter><number><symbol><whitespace><letter><number><symbol><whitespace>...
soru başlığının önerdiği gibi, isterseniz dört karakter kategorisinden farklı bir sıralama seçebilirsiniz.
Bunu not et:
Bir kategori için değiştirmeler farklı karakterler olabilir. örneğin
9a ^8B\t~7c\n]
geçerli olarak şablona uygunNLWSNLWSNLWS
(\t
ve\n
onların gerçek karakterleri olacaktır).Kod uzunluğu kısıtlaması yoktur. örneğin
1A +2B -
ve1A +2B
ve1A
ve1
hepsi şablona uygundurNLWSNLWSNLWS...
.
Şablonla uyumlu kodunuzun yapması gereken , tek bir ASCII karakterinde yer almak ve yukarıdaki kategorideki hangi kategoriye üye olduğuna bağlı olarak 0 ile 4 arasında bir sayı çıkarmak. Yani, 1
eğer girdi bir harfse, 2
bir sayı, 3
bir sembol, ve 4
boşluk ise çıktı. 0
Giriş bunların hiçbiri değilse çıkış ( kontrol karakteri ).
Giriş için, alternatif olarak giriş ASCII karakterinin kodunu temsil eden 0 ila 127 arasında bir sayı alabilirsiniz.
Giriş (karakter kodu olarak) ve çıkış çiftleri, kodunuzun sahip olması gereken tam olarak aşağıdaki gibidir:
in out
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 4
10 4
11 0 or 4
12 0 or 4
13 0 or 4
14 0
15 0
16 0
17 0
18 0
19 0
20 0
21 0
22 0
23 0
24 0
25 0
26 0
27 0
28 0
29 0
30 0
31 0
32 4
33 3
34 3
35 3
36 3
37 3
38 3
39 3
40 3
41 3
42 3
43 3
44 3
45 3
46 3
47 3
48 2
49 2
50 2
51 2
52 2
53 2
54 2
55 2
56 2
57 2
58 3
59 3
60 3
61 3
62 3
63 3
64 3
65 1
66 1
67 1
68 1
69 1
70 1
71 1
72 1
73 1
74 1
75 1
76 1
77 1
78 1
79 1
80 1
81 1
82 1
83 1
84 1
85 1
86 1
87 1
88 1
89 1
90 1
91 3
92 3
93 3
94 3
95 3
96 3
97 1
98 1
99 1
100 1
101 1
102 1
103 1
104 1
105 1
106 1
107 1
108 1
109 1
110 1
111 1
112 1
113 1
114 1
115 1
116 1
117 1
118 1
119 1
120 1
121 1
122 1
123 3
124 3
125 3
126 3
127 0
Girişler 11, 12, ve karakterlerin 13 tekabül bazen boşluk kabul böylece onların çıkışları olabilir 0
veya 4
istediğiniz gibi.
Bayt cinsinden en kısa kod kazanır.