당신의 임무는 채팅 메시지 목록을 제공하는 프로그램을 작성하는 것입니다. 각 사람이 얼마나 많은 시간을 핑을했는지 계산하여 모든 사람의 인기를 알 수 있습니다. 그러나 비밀리에해야하므로 코드를 숨길 수 있도록 가능한 한 작아야합니다.
명세서
- 입력은 2 개의 튜플 목록으로 제공되며 각 항목은 형식
("username", "message")
입니다. - 다른 사용자에 대한 핑은 그 사용자
@
를 명확하게 참조하는 3 자 이상의 문자 로 정의됩니다 . - 그러나
:messageid
공백 으로 시작해야하는 답장도 고려해야합니다 . - 첫 번째 메시지에 ID가 있다고 가정하고
0
순차적으로 진행하십시오. - 각 사용자를 출력하고 각 사용자가 핑한 횟수를 말합니다.
- 출력은 임의의 순서 / 합리적인 형식이 될 수 있습니다.
- 이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다!
테스트 사례
[["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
우리는 어느 시점에서 "Alex is wrong"농담으로 멈추고 있습니까?
—
Martin Ender
답장이 범위를 벗어날 수 있습니까 (예 :으로 시작하는 첫 번째 메시지
—
Sp3000
:3
) 또는 회의실의 사용자를 만족시키지 않는 핑 (예 :) @zzz
입니까?
핑된 사용자가 핑할 때 아직 메시지를 게시 할 수 없습니까? 예를 들어
—
ETHproductions
[["Doorknob","@Alex is wrong"],["Alex","I am only slightly wrong"]]
유효한 입력입니까?
:0
놀란 이모티콘으로 두 배가되는 것을 좋아합니다 .