Meydan okuma
Bu zorluğun amacı, belirli bir String'in standart bir UK QWERTY klavyesinin yalnızca bir satırı kullanılarak yazılabilir olup olmadığını belirlemektir.
Bu, code golf
bayttaki en kısa çözüm kazanır!
IO
Giriş, 32-126 (dahil) ASCII ondalık aralığında sıfır veya daha fazla karakterden oluşan tek bir Dize olacaktır. Bu meydan okuma için boş bir String'in yazım gerektirmediğini ve böylece tek bir satır kullanılarak yazılabileceğini varsayabilirsiniz.
Girişi Dize, karakter listesi veya diliniz için eşdeğer bir form olarak alabilirsiniz.
Çıktı, tek bir satır kullanılarak yazılabilen herhangi bir Dize için gerçek bir değer veya yapamayan bir satır için falsey olmalıdır.
Klavye düzeni
Standart klavye düzeninin altında ne olduğu konusundaki belirsizlikleri açıklığa kavuşturmak için, her satırda alternatif üst tuşlar (vardiya kullanılarak erişilir) de dahil olmak üzere tuşların bir listesi bulunmaktadır.
- Satır 1
- Standart:
`1234567890-=
- Standart:
- Hat 2
- Standart:
qwertyuiop[]
- Standart:
- Satır 3
- Standart:
asdfghjkl;'#
- Büyük harf:
ASDFGHJKL
- Özel Etkinlik: Caps Lock
- Standart:
- Satır 4
- Standart:
\zxcvbnm,./
- Alternatif:
|<>?
- Büyük harf:
ZXCVBNM
- Özel Etkinlik: Shift
- Standart:
- Çizgi 5
- Özel Etkinlik: Boşluk Çubuğu
Alternatif üst tuşlara yalnızca Üst Karakter aynı satırdaysa basılabilir ve büyük harf tuşlarına yalnızca Büyük Harf Kilidi veya ÜstKrktr üzerinden erişilebilir. Gerçekten sadece bir klavye hattı kullanabilirsiniz!
Test senaryoları
-> true (empty string)
45-2=43 -> true (line 1)
qwerty -> true (line 2)
tryitout -> true (line 2)
Qwerty -> false (no shift or caps on line 2)
#sad -> true (line 3)
AsDf -> true (caps lock used)
@sDF -> false (no shift for alternate upper)
zxcvbn? -> true (line 4)
zxc vbn -> false (spacebar on separate line)
123abc -> false (multiple lines)
-> true (just space bar)
!!! -> false (exclamation marks cannot be printed by a single line)