์ฝ๋ฉ ํ ์คํธ ์ฐ์ต - 2021 KAKAO BLIND RECRUITMENT
<์์ ๊ฒ์>
๋ฌธ์ ์ค๋ช
์นด์นด์ค๋ ํ๋ฐ๊ธฐ ๊ฒฝ๋ ฅ ๊ฐ๋ฐ์ ๊ณต๊ฐ์ฑ์ฉ์ ์งํ ์ค์ ์์ผ๋ฉฐ ํ์ฌ ์ง์์ ์ ์์ ์ฝ๋ฉ ํ ์คํธ๊ฐ ์ข ๋ฃ๋์์ต๋๋ค.
์ด๋ฒ ์ฑ์ฉ์์ ์ง์์๋ ์ง์์ ์์ฑ ์ ์๋์ ๊ฐ์ด 4๊ฐ์ง ํญ๋ชฉ์ ๋ฐ๋์ ์ ํํ๋๋ก ํ์์ต๋๋ค.
- ์ฝ๋ฉ ํ ์คํธ ์ฐธ์ฌ ๊ฐ๋ฐ์ธ์ด ํญ๋ชฉ์ cpp, java, python ์ค ํ๋๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.
- ์ง์ ์ง๊ตฐ ํญ๋ชฉ์ backend์ frontend ์ค ํ๋๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.
- ์ง์ ๊ฒฝ๋ ฅ ๊ตฌ๋ถ ํญ๋ชฉ์ junior์ senior ์ค ํ๋๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.
- ์ ํธํ๋ ์์ธํธ๋๋ก chicken๊ณผ pizza ์ค ํ๋๋ฅผ ์ ํํด์ผ ํฉ๋๋ค.
์ธ์ฌ์์ ํ์ ๊ทผ๋ฌดํ๊ณ ์๋ ๋๋์ฆ๋ ์ฝ๋ฉ ํ ์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์ํ์ฌ ์ฑ์ฉ์ ์ฐธ์ฌํ ๊ฐ๋ฐํ๋ค์ ์ ๊ณตํ๊ธฐ ์ํด
์ง์์๋ค์ ์ง์ ์กฐ๊ฑด์ ์ ํํ๋ฉด ํด๋น ์กฐ๊ฑด์ ๋ง๋ ์ง์์๊ฐ ๋ช ๋ช ์ธ ์ง ์ฝ๊ฒ ์ ์ ์๋ ๋๊ตฌ๋ฅผ ๋ง๋ค๊ณ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ๊ฐ๋ฐํ์์ ๊ถ๊ธํดํ๋ ๋ฌธ์์ฌํญ์ ๋ค์๊ณผ ๊ฐ์ ํํ๊ฐ ๋ ์ ์์ต๋๋ค.
์ฝ๋ฉ ํ ์คํธ์ java๋ก ์ฐธ์ฌํ์ผ๋ฉฐ, backend ์ง๊ตฐ์ ์ ํํ๊ณ , junior ๊ฒฝ๋ ฅ์ด๋ฉด์, ์์ธํธ๋๋ก pizza๋ฅผ ์ ํํ ์ฌ๋ ์ค ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 50์ ์ด์ ๋ฐ์ ์ง์์๋ ๋ช ๋ช ์ธ๊ฐ?
๋ฌผ๋ก ์ด ์ธ์๋ ๊ฐ ๊ฐ๋ฐํ์ ์ํฉ์ ๋ฐ๋ผ ์๋์ ๊ฐ์ด ๋ค์ํ ํํ์ ๋ฌธ์๊ฐ ์์ ์ ์์ต๋๋ค.
- ์ฝ๋ฉ ํ ์คํธ์ python์ผ๋ก ์ฐธ์ฌํ์ผ๋ฉฐ, frontend ์ง๊ตฐ์ ์ ํํ๊ณ , senior ๊ฒฝ๋ ฅ์ด๋ฉด์, ์์ธํธ๋๋ก chicken์ ์ ํํ ์ฌ๋ ์ค ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 100์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
- ์ฝ๋ฉ ํ ์คํธ์ cpp๋ก ์ฐธ์ฌํ์ผ๋ฉฐ, senior ๊ฒฝ๋ ฅ์ด๋ฉด์, ์์ธํธ๋๋ก pizza๋ฅผ ์ ํํ ์ฌ๋ ์ค ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 100์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
- backend ์ง๊ตฐ์ ์ ํํ๊ณ , senior ๊ฒฝ๋ ฅ์ด๋ฉด์ ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 200์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
- ์์ธํธ๋๋ก chicken์ ์ ํํ ์ฌ๋ ์ค ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 250์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
- ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ 150์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
์ฆ, ๊ฐ๋ฐํ์์ ๊ถ๊ธํดํ๋ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ ํํ๋ฅผ ๊ฐ์ต๋๋ค.
* [์กฐ๊ฑด]์ ๋ง์กฑํ๋ ์ฌ๋ ์ค ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ X์ ์ด์ ๋ฐ์ ์ฌ๋์ ๋ชจ๋ ๋ช ๋ช ์ธ๊ฐ?
๋ฌธ์
์ง์์๊ฐ ์ง์์์ ์ ๋ ฅํ 4๊ฐ์ง์ ์ ๋ณด์ ํ๋ํ ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ ํ๋์ ๋ฌธ์์ด๋ก ๊ตฌ์ฑํ ๊ฐ์ ๋ฐฐ์ด info,
๊ฐ๋ฐํ์ด ๊ถ๊ธํดํ๋ ๋ฌธ์ ์กฐ๊ฑด์ด ๋ฌธ์์ด ํํ๋ก ๋ด๊ธด ๋ฐฐ์ด query๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋,
๊ฐ ๋ฌธ์ ์กฐ๊ฑด์ ํด๋นํ๋ ์ฌ๋๋ค์ ์ซ์๋ฅผ ์์๋๋ก ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ํ ์ฌํญ
- info ๋ฐฐ์ด์ ํฌ๊ธฐ๋ 1 ์ด์ 50,000 ์ดํ์ ๋๋ค.
- info ๋ฐฐ์ด ๊ฐ ์์์ ๊ฐ์ ์ง์์๊ฐ ์ง์์์ ์ ๋ ฅํ 4๊ฐ์ง ๊ฐ๊ณผ ์ฝ๋ฉ ํ ์คํธ ์ ์๋ฅผ ํฉ์น
"๊ฐ๋ฐ์ธ์ด ์ง๊ตฐ ๊ฒฝ๋ ฅ ์์ธํธ๋ ์ ์" ํ์์ ๋๋ค.
- query ๋ฐฐ์ด์ ํฌ๊ธฐ๋ 1 ์ด์ 100,000 ์ดํ์ ๋๋ค.
- query์ ๊ฐ ๋ฌธ์์ด์ "[์กฐ๊ฑด] X" ํ์์ ๋๋ค.
* ๊ทธ ์ธ ์์ธํ ์ ํ ์ฌํญ์ ๋ณธ ๋ฌธ์ ์ฐธ๊ณ
๋ฌธ์ ํ์ด
- my solution (ํจ์จ์ฑ x)
def solution(info, query):
answer = []
val=[]
for i in info: # info: string to list
val.append(list(i.split()))
qu=[]
for i in query: # query: string to list
x=list(i.split())
for j in range(3): # remove "and"
x.remove("and")
qu.append(x)
for i in qu:
result=0 # count
for j in val: # - or value same: pass
if i[0]=='-' or i[0]==j[0]:
if i[1]=='-' or i[1]==j[1]:
if i[2]=='-' or i[2]==j[2]:
if i[3]=='-' or i[3]==j[3]:
if int(i[4]) <= int(j[4]):
result+=1
answer.append(result) # answer
return answer
์ ํ์ฑ: 40.0
ํจ์จ์ฑ: 0.0
ํฉ๊ณ: 40.0./100.0
1) info: string to list
2) query: string to list
2-1) and๋ ํ์ ์์ผ๋ฏ๋ก ์ ๊ฑฐ
3) query์ ๋ง๋ info ์ฐพ๊ธฐ
3-1) ์กฐ๊ฑด์ด "-"์ด๊ฑฐ๋ ๊ฐ index์ ๊ฐ์ด ๋๊น์ง ๊ฐ์ผ๋ฉด result +1
3-2) answer์ ์ถ๊ฐ
์๊ฐ๐ค
๋ฌธ์ ๋ฅผ ํ๋ฉด์๋ ๋ฌธ์ ๊ธธ์ด์ ๋นํด ๋๋ฌด ๊ฐ๋จํ๋ค๊ณ ์๊ฐํ์๋ค.
์์ ์๊ฒ ์ฝ๋๋ฅผ ๊ตฌํํ๊ณ ์ ์ถํ์์ผ๋ ์ ํ์ฑ์ ๋ค ๋ง์์ง๋ง ํจ์จ์ฑ์์ ๋ค ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ์๋ค.
ํจ์จ์ฑ์ ํต๊ณผํ๋ ค๋ฉด ์กฐ๊ธ ๋ ๊ณ ๋ฏผํด๋ด์ผ๊ฒ ๋ค.
๋ด๊ฐ ์๊ฐํ๊ธฐ์ ์ด ๋ฌธ์ ์ ํฌ์ธํธ๋
1)
์ด์๋ ๊ฒ ๊ฐ๋ค.
์ถ์ฒ: ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉ ํ ์คํธ ์ฐ์ต, https://programmers.co.kr/learn/challenges
'๐Algorithm > ๐ฅprogrammers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[programmers] ๋ก๋์ ์ต๊ณ ์์์ ์ต์ ์์ - 2021 Dev-Matching: ์น ๋ฐฑ์๋ ๊ฐ๋ฐ์ (0) | 2021.11.24 |
---|---|
[programmers] [3์ฐจ] ์์ถ - 2018 KAKAO BLIND RECRUITMENT (0) | 2021.09.28 |
[programmers] ๋คํธ์ํฌ (0) | 2021.09.13 |
[programmers] ๋ฒ ์คํธ์จ๋ฒ (0) | 2021.09.10 |
[programmers] ๋ฐฉ๋ฌธ ๊ธธ์ด - Summer/Winter Coding(~2018) (0) | 2021.09.09 |