Forked gibi bazı iki boyutlu esolangs ve Python gibi bazı esolangs bazen kod satırlarından önce boşluk gerektirebilir. Bu çok golf gibi değil. Ayrıca, tembel ve kod önce boşluk çok ihtiyacı olan bir 2d lang yazıyorum.Senin görevin bu dilleri golfçü yapan bir araç yazmak.
Tabii ki, bu mükemmel olmayacak; örneğin, bir sayı bir kaynak satırındaki ilk karakter olduğunda kullanılamaz. Bununla birlikte, genellikle yararlı olacaktır.
Meydan okuma
Bir program veya işlev yazacak ya ...
- ... bir argüman, bir dosya adı veya bir dize alır veya ...
- ... standart girişten okur.
Programınız şöyle davranacak cat
:
- Herhangi bir satırdaki ilk karakter bir sayı ise, kodunuz x boşluk yazacaktır, burada x bu sayıdır.
- Aksi takdirde, basitçe yazdırılır.
- Girişteki diğer tüm karakterler gibi.
Test senaryoları
Giriş:
foo bar foo bar
1foo bar foo bar foo bar
2foo bar foo bar foo bar foo bar
Çıktı:
foo bar foo bar
foo bar foo bar foo bar
foo bar foo bar foo bar foo bar
Giriş:
--------v
8|
8|
80
8,
7&
Çıktı:
--------v
|
|
0
,
&
Giriş:
foo bar
bar foo
foo bar
Çıktı:
foo bar
bar foo
foo bar
Giriş:
0123456789
1234567890
2345678901
3456789012
4567890123
Çıktı:
123456789
234567890
345678901
456789012
567890123
kurallar
- İlk karakterin bir sayı olduğu satırlar hariç, çıktı tam olarak girdi olarak olmalıdır.
- İsterseniz, sondaki yeni satır hariç, programınız dosyaya hiçbir şey ekleyemez / başa ekleyemez.
- Programınız girdi hakkında herhangi bir varsayımda bulunmayabilir. Boş satırlar, sayılar, Unicode karakterler, ne olursa olsun içerebilir.
- Birden fazla basamağı olan bir sayı bir çizgi (örn.
523abcdefg
) Başlatırsa , yalnızca ilk basamak (örnekte 5) boşluklara dönüşmelidir.
kazanan
Her dilde en kısa kod kazanır. Eğlenmene bak ve iyi şanslar!
Of course, this will not be perfect; it cannot be used, for instance, when a number is the first character on a line of source.
Doğru değil, sadece ilk karakteri 0 yapın (ahem, son test durumunuz)