Göreviniz, sohbet mesajlarının bir listesini veren bir program yazmak, her bir kişinin kaç kez pinglendiğini saymaktır, böylece herkesin ne kadar popüler olduğunu öğrenebilirim. Ancak, bunu gizli bir şekilde yapmak zorunda olduğum için, kodu gizleyebilmem için mümkün olduğunca küçük olmam gerekiyor.
gözlük
- Giriş, 2 öğeden oluşan bir listede gelir ve her öğe formdadır
("username", "message")
. - Başka bir kullanıcıya ping,
@
ardından açıkça o kullanıcıya atıfta bulunan 3 veya daha fazla harf olarak tanımlanır . - Bununla birlikte,
:messageid
bir boşlukla başlayan yanıtları da dikkate almanız gerekir . - İlk iletinin kimliğine sahip olduğunu varsayın
0
ve sırayla ilerleyin. - Her bir kullanıcının çıktısını alın ve her birinin kaç kez pinglendiğini söyleyin.
- Çıktı herhangi bir sırada / makul biçimde olabilir.
- Bu kod golf , bayt en kısa kod kazanır!
Test Durumları
[["AlexA.", "I am wrong"], ["Quartatoes", "@Alex you are very wrong"], ["AlexA.", ":1 I am only slightly wrong"]]
AlexA.: 1
Quartatoes: 1
[["Doorknob", "I have never eaten an avocad."], ["AquaTart", ":0 I will ship you an avocad"], ["AlexA.", ":0 this is shocking"]]
Doorknob: 2
AquaTart: 0
AlexA.: 0
[["Geobits", "I like causing sadness through downvotes."], ["Flawr", "I want to put random message ids in my chat messages :0 askjdaskdj"]]
Geobits: 0
Flawr: 0
[["Downgoat", "goatigfs.com/goatgif"], ["Downotherthing", "@Downgoat cool gifs"], ["Dennis", "@Down cool gifs this is an ambiguous ping"]]
Downgoat: 1
Downotherthing: 0
Dennis: 0
"Downvotes aracılığıyla üzüntü yaratmayı seviyorum." Buna cevap verebileceğim tek bir yol var, değil mi? ;)
—
Geobits
"Alex yanlış" şakalarıyla hangi noktada duruyoruz?
—
Martin Ender
Yanıt aralık dışında (örn. İle başlayan ilk mesaj
—
Sp3000
:3
) veya odadaki herhangi bir kullanıcıyı tatmin etmeyen bir ping (ör. @zzz
) Olabilir mi?
Ping yapan bir kullanıcı, ping yaparken henüz bir mesaj göndermemiş olabilir mi? örn.
—
ETHproductions
[["Doorknob","@Alex is wrong"],["Alex","I am only slightly wrong"]]
geçerli girdi mi?
:0
Sürpriz bir ifade olarak iki katına çıkmayı seviyorum .