Seçtiğiniz bir programlama dilinde , her biri programın herhangi bir yerinde bu karakter olmadan yazdırılabilir 95 ASCII karakterinden farklı bir çıktı veren 95 program yazın .
Dil Söz gelimi, Python , programınızı karakter çıktı versin P
olabilir
print(chr(80))
çünkü P
ASCII kod 80'e sahiptir. Bu program geçerlidir çünkü P
hiçbir zaman kaynak kodda görünmez. Ancak, küçük harf verir program için p
olduğu gibi, bir şey
print(chr(112))
o baskı yapar iken, çünkü geçersiz olacağını p
, p
kod mevcuttur. Geçerli bir program olabilir
exec(chr(112)+'rint(chr(112))')
Hangi yazdırır p
ama içermez p
.
Amacınız, 95 programınızın her birini mümkün olduğunca kısa yapmaktır. Sizin puanı tüm programların karakter uzunlukları toplamıdır.
Herhangi bir sebepten dolayı bazı karakterler için geçerli programlar yazamıyorsanız, bu karakterleri "Program Yok" veya DNP olarak işaretleyebilir ve tamamen kendileri için programları çıkarabilirsiniz . Bu şekilde sözdizimsel olarak katı diller rekabet edebilecek.
Kazanan cevabı en düşük puanı vardır cevaptır arasında en az DNP en sahip cevaplar seti.
kurallar
Tüm programlarınızın kaynak kodu yalnızca yazdırılabilir ASCII plus sekmeleri ve yeni satırları içerebilir , bunların tümü bir karakter olarak sayılır. (Çünkü farklı bir kodlamada var olmayan karakterleri atlamak kolay olurdu!)
- Not: Bu kural gerekli görünüyor, ancak farklı kodlamaları olan birçok dil var ve cevaplarını görmenin iyi olacağını düşünüyorum. Bu nedenle , bu kuralı kırabilirsin , istediğin karakterleri kullanabilirsin, ama sonra cevabın rekabetçi olmaz, kazanamaz.
Programlar , dilinizin standart kurallarına göre gerçek, tam programlar olmalıdır . İşlevlere ve REPL snippet'lerine izin verilmez.
Her programın çıktısı stdout'a veya dilinizin kabul edilen alternatifine gitmelidir.
Programlar, bilgi istememeli veya giriş yapılmamalıdır. (Giriş istemek dilinize özgü ise, sorun değil.)
Programlar belirleyici, çalışma süresinde sonlu ve bağımsız olmalıdır. Örneğin, birinin diğer programlardan ayrı bir klasörde çalışması önemli değildir.
Bir programın çıktısı, isteğe bağlı olarak takip eden tek satırlık bir yeni satırla karşılık gelen, yazdırılabilir ASCII karakteri olmalıdır;
Cevabınıza 95 (ideal) programın tamamı, puanınız ve DNP'ler hakkında bilgiler eklediğinizden emin olun. Sen listelemek gerekmez tüm "gibi basit bir kalıpta programları print(chr(80))
, print(chr(81))
, print(chr(82))
..." ama sen hepsinin emin emin olur çalışacak ve puanınız doğru eklenir söyledi.
Başvuru için, programlarınızın çıkması gereken 95 yazdırılabilir ASCII :
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
0