Geobitsian dili , bir kelimenin farklı bir harfle başlaması gereken bölümlere ayrıldığı yeni bir İngilizce sapkınlığıdır. Ardından, bu başlangıç harflerinden biri başka bir dizede her göründüğünde, büyük harf kullanımını koruyarak karşılık gelen tüm segmentiyle değiştirilir.
Bu işleme Geobitsizing adı verilir .
Örneğin, " Geobits " kelimesi parçalanabilir geo bits
ve saçmalık şiiri
Algy met a Bear
A Bear met Algy
The Bear was bulgy
The bulge was Algy
onunla jeobitize olur
Algeoy met a Bitsear
A Bitsear met Algeoy
The Bitsear was bitsulgeoy
The bitsulgeoe was Algeoy
çünkü her şey g
olur geo
, her G
(hiçbiri olmasa da) olur Geo
, her şey b
olur bits
ve her şey B
olur Bits
.
Her bir ikame işleminin, herhangi bir ara aşamaya değil, orijinal dizgeye göre gerçekleştirildiğine dikkat edin. eğer örneğin geo
olmuştu gbo
yerine, b
'oluşturuldu s ile değiştirildi olmaz bits
.
Meydan okuma
Geobitsian dili oluşturabilecek bir program veya işlev yazın.
Küçük harflerden (az) ve boşluklardan oluşan tek satırlık bir dize alın. Bu, boşlukları segmentleri ayıran Geobitsizing argümanı olarak kullanılan kelime olacaktır. Varsayabilirsiniz:
- Segmentler boş olmayacak. Böylece boşluklar birbirine komşu olmaz veya ipin başında veya sonunda olmaz.
- Her bölüm farklı bir harfle başlar. Dolayısıyla 26'dan fazla olamaz.
Örneğin, desteklemesi gerekir bazı geçerli segmentli dizeleri geo bits
, butt ner
, alex
ve do o r k nob
(tek harf kesimleri etkisi yoktur fakat geçerlidir). Ama geo
, butt ner
, Alex
ve do o r k n ob
geçersizdir.
Programınızın veya işlevinizin, Geobitsizing'i uygulamak ve sonuçta oluşan Geobitsian dilini yazdırmak veya döndürmek için başka bir rastgele dize alması gerekir.
Bu dizenin yalnızca yeni satırlar ve yazdırılabilir ASCII içerdiğini varsayabilirsiniz .
Harf durumlarının girişten çıkışa korunması gerektiğini unutmayın.
no pro gr am m ing
Geobitsizing argümanı olarak kullanılan bazı örnekler :
[empty string]
→ [empty string]
i
→ ing
I
→ Ing
Mmmm, mmm... MmmmMMM: m&m!
→ Mmmm, mmm... MmmmMMM: m&m!
(değişiklik yok)
People think bananas are great, don't you?
→ Proeoprole thingnok bamnoamnoams amre grreamt, dono't you?
Pet a Puppy
Google Wikipedia
↓
Proet am Prouproproy
Groogrle Wingkingproedingam
Argümanın nasıl düzenlendiğine bakılmaksızın sonuçların özdeş olması gerektiğini, örneğin ing pro m no am gr
yukarıdakiyle aynı sonuçları vereceğini unutmayın .
Bayt cinsinden en kısa kod kazanır.
\\b${l}(\\S+)
Her ne kadar bu 5 bayta mal olsa da deneyin .
abra cadabra
, !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
... Hepsi sınır durumları kapsamalıdır ve bir çalışır Regexes kullanmak eğer bunlardan bir yeri vardır
["no", "pro", "gr", "am", "m", "ing"]