งานของคุณคือการเขียนโปรแกรมที่ให้รายชื่อข้อความแชทนับจำนวนครั้งที่แต่ละคนได้รับการ ping ดังนั้นฉันสามารถรู้ได้ว่าทุกคนโด่งดังแค่ไหน แต่เนื่องจากฉันต้องทำมันอย่างลับๆล่อๆฉันต้องการให้มันเล็กที่สุดเท่าที่จะเป็นไปได้เพื่อที่ฉันจะสามารถซ่อนรหัสได้
รายละเอียด
- การป้อนข้อมูลที่มาในรายการของ 2 tuples
("username", "message")
กับแต่ละรายการเป็นของแบบฟอร์ม - การ ping ไปยังผู้ใช้รายอื่นถูกกำหนดให้เป็น
@
ตัวอักษรรองลงมา 3 ตัวหรือมากกว่านั้นซึ่งอ้างถึงผู้ใช้นั้นอย่างไม่น่าสงสัย - อย่างไรก็ตามคุณต้องพิจารณาการตอบกลับด้วยซึ่งจะต้องเริ่ม
:messageid
จากตามด้วยช่องว่าง - สมมติว่าข้อความแรกมีรหัส
0
และดำเนินการตามลำดับ - เอาท์พุทผู้ใช้แต่ละคนและบอกว่ากี่ครั้งที่แต่ละคนได้รับการ ping
- เอาต์พุตสามารถอยู่ในรูปแบบคำสั่ง / สมเหตุสมผล
- นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!
กรณีทดสอบ
[["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
"ฉันชอบทำให้เกิดความเศร้าผ่านทางโหวต" คุณรู้ว่ามีวิธีการที่เหมาะสมเพียงวิธีเดียวที่ฉันสามารถตอบกลับได้ใช่มั้ย ;)
—
Geobits
เราหยุดพูดถึงเรื่องตลกของอเล็กซ์ว่า "ผิดหรือยัง?"
—
Martin Ender
การตอบกลับอยู่นอกช่วง (เช่นข้อความแรกที่ขึ้นต้นด้วย
—
Sp3000
:3
) หรือ ping ไม่พอใจผู้ใช้ในห้อง (เช่น@zzz
)?
ผู้ใช้ที่ส่ง Ping ไปยังยังไม่ได้โพสต์ข้อความเมื่อเขาส่ง Ping ไปได้หรือไม่? เช่นการ
—
ETHproductions
[["Doorknob","@Alex is wrong"],["Alex","I am only slightly wrong"]]
ป้อนข้อมูลที่ถูกต้องคืออะไร?
:0
เป็นสองเท่าของอิโมติคอน