하위 도메인 방문 횟수
"discuss.leetcode.com"
은 다양한 하위 도메인으로 구성됩니다. 최상위 수준에는 "com"
가 있고, 다음 수준에는 "leetcode.com"
가 있고, 가장 낮은 수준에는 "discuss.leetcode.com"
가 있습니다. "discuss.leetcode.com"
와 같은 도메인을 방문할 때 암시적으로 상위 도메인 "leetcode.com"
및 "com"
도 방문합니다.카운트 쌍 도메인은
"rep d1.d2.d3"
또는 "rep d1.d2"
두 가지 형식 중 하나를 갖는 도메인입니다. 여기서 rep
는 도메인 방문 횟수이고 d1.d2.d3
는 도메인 자체입니다."9001 discuss.leetcode.com"
는 discuss.leetcode.com
가 9001
번 방문되었음을 나타내는 카운트 쌍 도메인입니다. 개수 쌍 도메인의 배열
cpdomains
이 주어지면 입력에서 각 하위 도메인의 개수 쌍 도메인 배열을 반환합니다. 어떤 순서로든 답변을 반환할 수 있습니다.예 1:
입력: cpdomains = ["9001 토론.leetcode.com"]
출력: ["9001 leetcode.com","9001 토론.leetcode.com","9001 com"]
설명: "discuss.leetcode.com"이라는 하나의 웹사이트 도메인만 있습니다.
위에서 설명한 것처럼 하위 도메인 "leetcode.com"및 "com"도 방문합니다. 따라서 그들은 모두 9001번 방문하게 됩니다.
예 2:
입력: cpdomains = ["900 google.mail.com", "50 yahoo.com", "1 intel.mail.com", "5 wiki.org"]
출력: ["901 mail.com","50 yahoo.com","900 google.mail.com","5 wiki.org","5 org","1 intel.mail.com","951 com "]
설명: "google.mail.com"을 900번, "yahoo.com"을 50번, "intel.mail.com"을 한 번, "wiki.org"를 5번 방문합니다.
하위 도메인의 경우 "mail.com"을 900 + 1 = 901번, "com"을 900 + 50 + 1 = 951번, "org"를 5번 방문합니다.
제약:
1 <= cpdomain.length <= 100
1 <= cpdomain[i].length <= 100
cpdomain[i]
는 "repi d1i.d2i.d3i"
형식 또는 "repi d1i.d2i"
형식을 따릅니다. repi
는 [1, 104]
범위의 정수입니다. d1i
, d2i
및 d3i
는 영문 소문자로 구성됩니다. 해결책:
class Solution:
def subdomainVisits(self, cpdomains: List[str]) -> List[str]:
ctr = {}
for val in cpdomains:
rep, domain = val.split(" ")
rep = int(rep)
doms = domain.split(".")
n = len(doms)
for i in range(n):
curr = ".".join(doms[i:])
ctr[curr] = ctr.get(curr, 0) + rep
return ["{} {}".format(v, k) for k, v in ctr.items()]
Reference
이 문제에 관하여(하위 도메인 방문 횟수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/theabbie/subdomain-visit-count-2dj4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)