250x250
Link
๋์ GitHub Contribution ๊ทธ๋ํ
Loading data ...
Notice
Recent Posts
Recent Comments
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ๋์ํ๋ณธ
- ๋ฐ์ดํฐ๋ถ๊ท ํ
- ์ฃผ์ฑ๋ถ๋ถ์
- LDA
- DBSCAN
- dataframe
- ๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ
- Python
- ADP
- ํฌ๋กค๋ง
- iloc
- ๋ ๋ฆฝํ๋ณธ
- PCA
- ํ์ด์ฌ
- ๋น ๋ฐ์ดํฐ
- ์ค๋ฒ์ํ๋ง
- ๊ตฐ์งํ
- pandas
- ๋ฐ์ดํฐ๋ถ์์ ๋ฌธ๊ฐ
- ์ธ๋์ํ๋ง
- numpy
- ADsP
- ํ ์คํธ๋ถ์
- t-test
- ๋ฐ์ดํฐ๋ถ์
- ์๋ํด๋ผ์ฐ๋
- opencv
- ๋ฐ์ดํฐ๋ถ์์ค์ ๋ฌธ๊ฐ
- Lambda
- datascience
Archives
Data Science LAB
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (์์์ฐพ๊ธฐ) ๋ณธ๋ฌธ
๐ Coding Test/Programmers
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (์์์ฐพ๊ธฐ)
ใ ใ ใ ใ 2023. 1. 24. 21:03728x90
1. ๋ฌธ์ ์ค๋ช
ํ์๋ฆฌ ์ซ์๊ฐ ์ ํ ์ข ์ด ์กฐ๊ฐ์ด ํฉ์ด์ ธ์์ต๋๋ค. ํฉ์ด์ง ์ข ์ด ์กฐ๊ฐ์ ๋ถ์ฌ ์์๋ฅผ ๋ช ๊ฐ ๋ง๋ค ์ ์๋์ง ์์๋ด๋ ค ํฉ๋๋ค.
๊ฐ ์ข ์ด ์กฐ๊ฐ์ ์ ํ ์ซ์๊ฐ ์ ํ ๋ฌธ์์ด numbers๊ฐ ์ฃผ์ด์ก์ ๋, ์ข ์ด ์กฐ๊ฐ์ผ๋ก ๋ง๋ค ์ ์๋ ์์๊ฐ ๋ช ๊ฐ์ธ์ง return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
2. ์ ํ์ฌํญ
- numbers๋ ๊ธธ์ด 1 ์ด์ 7 ์ดํ์ธ ๋ฌธ์์ด์ ๋๋ค.
- numbers๋ 0~9๊น์ง ์ซ์๋ง์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- "013"์ 0, 1, 3 ์ซ์๊ฐ ์ ํ ์ข ์ด ์กฐ๊ฐ์ด ํฉ์ด์ ธ์๋ค๋ ์๋ฏธ์ ๋๋ค.
3. ๋ด ํ์ด
import math
from itertools import permutations
def primenumber(x):
if x == 0 or x == 1:
return False
for i in range(2,int(math.sqrt(x))+1):
if x % i == 0:
return False
return True
def solution(numbers):
answer = 0
n = len(numbers)
numbers = [str(x) for x in numbers]
nums = []
for i in range(1, n+1):
nums += list(permutations(numbers, i))
nums = [int(("").join(p)) for p in nums]
for i in set(nums):
if i == '0':
break
elif primenumber(i):
answer += 1
return answer
1. ์์ ์ฌ๋ถํ๋ณํ๋ ํจ์ ์์ฑ
2. permutation์ผ๋ก ์ซ์ ์กฐํฉ ์์ฑ
3. set()ํจ์๋ก ์ค๋ณต ์ ๊ฑฐ ํ, ์์์ด๋ฉด answer + 1
4. ๋ค๋ฅธ ์ฌ๋ ํ์ด
from itertools import permutations
def solution(n):
a = set()
for i in range(len(n)):
a |= set(map(int, map("".join, permutations(list(n), i + 1))))
a -= set(range(0, 2))
for i in range(2, int(max(a) ** 0.5) + 1):
a -= set(range(i * 2, max(a) + 1, i))
return len(a)
728x90
'๐ Coding Test > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Comments