๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • What would life be If we had no courage to attemp anything?
Problem Solving/BAEKJOON

[baekjoon]python #5635 ์ƒ์ผ

by DevIseo 2023. 1. 20.

[baekjoon]python #5635 ์ƒ์ผ

https://www.acmicpc.net/problem/5635

 

5635๋ฒˆ: ์ƒ์ผ

์–ด๋–ค ๋ฐ˜์— ์žˆ๋Š” ํ•™์ƒ๋“ค์˜ ์ƒ์ผ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ฐ€์žฅ ๋‚˜์ด๊ฐ€ ์ ์€ ์‚ฌ๋žŒ๊ณผ ๊ฐ€์žฅ ๋งŽ์€ ์‚ฌ๋žŒ์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

www.acmicpc.net

import sys
input = sys.stdin.readline
n = int(input())

#๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑ
birth={}
for _ in range(n):
    #๊ณต๋ฐฑ ์ œ๊ฑฐ๋ฅผ ์œ„ํ•ด strip()
    #์ด๋ฆ„,์ผ,์›”,๋…„
    name,d,m,y = map(str,input().strip().split(' '))
    #ํ•œ์ž๋ฆฌ ์ˆ˜ ์•ž์— 0๋ถ™์ด๊ธฐ
    if len(d)==1:
        d='0'+d
    if len(m)==1:
        m='0'+m
    #๋”•์…”๋„ˆ๋ฆฌ์— ์ถ”๊ฐ€
    birth[name] = int(y+m+d)

#์ถœ์ƒ๋…„๋„๊ฐ€ ๋А๋ฆฐ ์ˆœ์œผ๋กœ ์ •๋ ฌ
sort_birth = sorted(birth.items(),key=lambda x:x[1],reverse=True)

#๋‚˜์ด๊ฐ€ ๊ฐ€์žฅ ์–ด๋ฆฐ ์‚ฌ๋žŒ
print(sort_birth[0][0])
#๋‚˜์ด๊ฐ€ ๊ฐ€์žฅ ๋งŽ์€ ์‚ฌ๋žŒ
print(sort_birth[-1][0])

 

๋”•์…”๋„ˆ๋ฆฌ ์ •๋ ฌํ•˜๊ธฐ

1. key๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด ๋ฆฌ์ŠคํŠธ ๋ฐ˜ํ™˜

# key ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ
sorted(dict_name)

# key ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋ฆฌ์ŠคํŠธ
sorted((dict_name, reverse=True)

 

2.  key ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑํ•˜๊ธฐ

# key ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ๋œ (key,value)์Œ์„ ๊ฐ€์ง„ ๋ฆฌ์ŠคํŠธ
sorted(dict_name.items())

# key ๊ฐ’์„ ๊ธฐ์ค€์„ ์ •๋ ฌ๋œ ๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑ 
dic = dict(sorted(dict_name.items()))

 

3.  value ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑํ•˜๊ธฐ 

# value ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•˜์—ฌ (k, v) ๋ฆฌ์ŠคํŠธ ๋ฐ˜ํ™˜
sorted(dict_name.items(), key=lambda x:x[1])
# ์œ„ ๊ฐ’์„ ๋”•์…”๋„ˆ๋ฆฌ๋กœ ๋ณ€ํ™˜
dict(sorted(dict_name.items(), key=lambda x:x[1]))
# value ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
sorted(dict_name,key=lambda x:dic[x])

 

๋Œ“๊ธ€