๐กsolutions )
โ ์ฌ์ฉํ ์ฃผ์ ํจ์๋ lambda, map, sort , join์ด๋ค.
โ map ํจ์๋ ๋ฆฌ์คํธ์ ์์๋ฅผ ์ง์ ๋ ํจ์๋ก ์ฒ๋ฆฌํด์ค๋ค. ์ด ๋ฌธ์ ์์๋ ์ ๋ ฅ ๋ฐ์ ์ซ์ ๋ฆฌ์คํธ๋ฅผ ๊ฐ ์์๋ณ๋ก str ๋ณํํด์ฃผ์๋ค. sort์์ ๊ฐ ์๋ฆฟ์ ๋ณ๋ก ๊ฐ์ ๋น๊ตํ๊ธฐ ์ํด ๋ฌธ์์ด๋ก ๋ณํํ๋ค.
โ sort ํจ์๋ก ํน์ key๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ. ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ์ซ์๊ฐ 1000 ์ดํ์ด๊ธฐ ๋๋ฌธ์ key๊ฐ์ผ๋ก ๋๋คํจ์๋ฅผ ์จ์คฌ๋ค. x: x*3๋ ๋ฌธ์์ด์ 3์ ๊ณฑํด์ฃผ๋ฉด ๋ฌธ์์ด์ 3๊ฐ์ฉ ๋ฐ๋ณตํด์ ๋์ดํ ๊ฒ์ผ๋ก ๋ํ๋. ๊ฐ์ ๋น๊ตํ ํ ์ ๋ ฌํ๋ค. e.g.) ๊ฐ์ด 5์์ผ๋ฉด 555๋ก ๊ฐ์ ๋น๊ตํด์ ์ ๋ ฌ
โ join ํจ์๋ ๋ฆฌ์คํธ์ ํน์ ๊ตฌ๋ถ์๋ฅผ ์ถ๊ฐํ์ฌ ๋ฌธ์์ด๋ก ๋ณํํจ. ์ฌ๊ธฐ์๋ ๊ณต๋ฐฑ ์์ด ๋ฌธ์์ด๋ก ํฉ์ณค๋ค.
โ ์ฒ์์๋ ํ ์คํธ์ผ์ด์ค 11๋ฒ์ ํต๊ณผํ์ง ๋ชปํ๋๋ฐ ๊ทธ ์ด์ ๋ ๋ชจ๋ ์์๊ฐ 0์ธ ๊ฒฝ์ฐ๋ฅผ ๊ณ ๋ คํ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ด๋ค. ์์ ์ ์ฝ๋์์๋ ๋ง์ง๋ง ๋ฐํ์์ return ''.join(numbers)๋ฅผ ํ๋๋ฐ, ์ด๋ ๊ฒ ๋๋ฉด numbers = [ 0,0,0,0 ]์ธ ๊ฒฝ์ฐ 0์ ๋ฐํํด์ผ ํ๋๋ฐ 0000์ ๋ฐํํ๊ฒ ๋์ด ์๋ฌ๊ฐ ๋๋ค. ๋ฐ๋ผ์ int ->str ์์ผ๋ก ๋ณํํด์ฃผ๋ฉด 0์ผ๋ก ์ณ๊ฒ ๋ฐํํ๋ค.
๐ซcode )
def solution(numbers):
numbers = list(map(str, numbers))
numbers.sort(key=lambda x: x * 3, reverse=True)
return str(int(''.join(numbers)))
๐ description )
๋ฌธ์ ์ถ์ฒ : https://programmers.co.kr/learn/courses/30/lessons/42746?language=python3
๋ฌธ์ ์ค๋ช
0 ๋๋ ์์ ์ ์๊ฐ ์ฃผ์ด์ก์ ๋, ์ ์๋ฅผ ์ด์ด ๋ถ์ฌ ๋ง๋ค ์ ์๋ ๊ฐ์ฅ ํฐ ์๋ฅผ ์์๋ด ์ฃผ์ธ์.
์๋ฅผ ๋ค์ด, ์ฃผ์ด์ง ์ ์๊ฐ [6, 10, 2]๋ผ๋ฉด [6102, 6210, 1062, 1026, 2610, 2106]๋ฅผ ๋ง๋ค ์ ์๊ณ , ์ด์ค ๊ฐ์ฅ ํฐ ์๋ 6210์ ๋๋ค.
0 ๋๋ ์์ ์ ์๊ฐ ๋ด๊ธด ๋ฐฐ์ด numbers๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์์๋ฅผ ์ฌ๋ฐฐ์นํ์ฌ ๋ง๋ค ์ ์๋ ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ฐ๊พธ์ด return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- numbers์ ๊ธธ์ด๋ 1 ์ด์ 100,000 ์ดํ์ ๋๋ค.
- numbers์ ์์๋ 0 ์ด์ 1,000 ์ดํ์ ๋๋ค.
- ์ ๋ต์ด ๋๋ฌด ํด ์ ์์ผ๋ ๋ฌธ์์ด๋ก ๋ฐ๊พธ์ด return ํฉ๋๋ค.
์ ์ถ๋ ฅ ์
numbers return
[6, 10, 2] 6210 [3, 30, 34, 5, 9] 9534330
'Algorithm > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ ์ํธ /ํ์ด์ฌ /Python (0) | 2020.08.20 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฒด์ก๋ณต /ํ์ด์ฌ /Python (0) | 2020.08.19 |
[ํ๋ก๊ทธ๋๋จธ์ค] 2016๋ /ํ์ด์ฌ /Python (0) | 2020.08.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ ์ฐพ๊ธฐ /ํ์ด์ฌ /Python /์์ ํ์ (0) | 2020.08.15 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ตฌ๋ช ๋ณดํธ /ํ์ด์ฌ /python /ํ์๋ฒ (2) | 2020.08.14 |