CodeKata
SQL
LeetCode: Rank Scores
select
score
, dense_rank() over (order by score desc) as `rank`
from
scores
order by
`rank`
;
LeetCode: Employees Earning More Than Their Managers
select
e1.name as employee
from
Employee e1
left join Employee e2
on e1.managerId = e2.id
where
e1.salary > e2.salary
;
LeetCode: Duplicate Emails
with cte as (
select
email
, count(*) as cnt
from
Person
group by
email
)
select
email
from
cte
where
cnt > 1
;
select
email
from
Person
group by
email
having
count(*)>1
;
LeetCode: Customers Who Never Order
select
name as customers
from
Customers c
left join Orders o
on c.id = o.customerId
where
o.id is null
;
Python
83. 귤 고르기
from collections import defaultdict
def solution(k, tangerine):
answer = 0
tangerine_dict = defaultdict(int)
for t in tangerine:
tangerine_dict[t] += 1
tangerine_list = sorted(
tangerine_dict.items()
, key=lambda x: x[1]
, reverse=True
)
for t, cnt in tangerine_list:
if k <= 0:
break
answer += 1
k -= cnt
return answer
참고할 만한 다른 풀이
import collections
def solution(k, tangerine):
answer = 0
cnt = collections.Counter(tangerine)
for v in sorted(cnt.values(), reverse = True):
k -= v
answer += 1
if k <= 0:
break
return answer
from collections import Counter
def solution(k, tangerine):
counter = Counter(tangerine)
tangerine.sort(key = lambda t: (-counter[t], t))
return len(set(tangerine[:k]))
최종 프로젝트 관련
- 코드 합치기 완료
- 튜터님 피드백 내용 추가하기
QCC
7회차
회고
- 주말부터 지금까지 몸이 너무 안 좋아서 일을 많이 못 했다…😥
- 토요일에 쓰러졌어서 이번주는 좀 쉬엄쉬엄 해야겠음
- QCC 마지막 마무리는 잘 해서 다행이다~