์๋ ํ์ธ์! ์ค๋์ ๋ฐฑ์ค ์จ๋ผ์ธ ์ ์ง์ 1816๋ฒ ๋ฌธ์ , "์ํธ ๋น๋ฐ๋ฒํธ ๊ฒ์ฆ"์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ด ๋ฌธ์ ๋ ์ฃผ์ด์ง ์ซ์๊ฐ ์ ์ ํ ์ํธ ๋น๋ฐ๋ฒํธ์ธ์ง ํ์ธํ๋ ๊ณผ์ ์ ๋ค๋ฃน๋๋ค. ์ด ๊ธ์์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ ๊ทผ๋ฒ๊ณผ ํจ๊ป Python์ผ๋ก ์์ฑํ ํ์ด ์ฝ๋๋ฅผ ์๊ฐํ๊ฒ ์ต๋๋ค.
1. ๋ฌธ์ ์ค๋ช
์ฐ๋ฆฌ๋ N๊ฐ์ ์ซ์๋ฅผ ์ ๋ ฅ๋ฐ์, ๊ฐ๊ฐ์ ์ซ์๊ฐ ์ํธ ๋น๋ฐ๋ฒํธ๋ก ์ ์ ํ์ง ํ์ธํด์ผ ํฉ๋๋ค. ์ ์ ํ ์ํธ ๋น๋ฐ๋ฒํธ๋ ์ฃผ์ด์ง ์ซ์๊ฐ 2๋ถํฐ 1,000,000๊น์ง์ ๋ชจ๋ ์๋ก ๋๋์ด์ง์ง ์๋ ์ซ์์ ๋๋ค. ๋ง์ฝ ํ๋๋ผ๋ ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ์๋ค๋ฉด "NO"๋ฅผ, ๊ทธ๋ ์ง ์๋ค๋ฉด "YES"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
๋ฌธ์ URL : https://www.acmicpc.net/problem/1817
2. ์ ๊ทผ๋ฒ
๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์๋์ ๊ฐ์ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค:
- ๋จผ์ , N๊ฐ์ ์ซ์๋ฅผ ์ ๋ ฅ๋ฐ์ต๋๋ค.
- ๊ฐ ์ซ์์ ๋ํด 2๋ถํฐ 1,000,000๊น์ง์ ์๋ก ๋๋์ด ๋จ์ด์ง๋์ง ํ์ธํฉ๋๋ค.
- ๋ง์ฝ ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ํ๋๋ผ๋ ์กด์ฌํ๋ค๋ฉด ํด๋น ์ซ์๋ ์ ์ ํ ์ํธ ๋น๋ฐ๋ฒํธ๊ฐ ์๋๋ฏ๋ก "NO"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
- ๋ชจ๋ ์ซ์๊ฐ ๋๋์ด ๋จ์ด์ง์ง ์์ผ๋ฉด "YES"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
3. Python ์ฝ๋
# ์์ ๊ฐ์ ์
๋ ฅ
N = int(input())
# ์๋ฅผ ๋ด์๋๋ ๋ฐฐ์ด ์ ์ธ
numArr = []
# ์ํธ ์
๋ ฅ ๋ฐ๊ธฐ
for i in range(N):
numArr.append(int(input()))
# ์ ์ ํ ์ํธ ์ฌ๋ถ ํ์ธ
for i in range(len(numArr)):
for j in range(2, 1000001):
if numArr[i] % j == 0:
# 1,000,000 ๊น์ง ์์ ์ฌ๋ถ ํ์ธ
print('NO')
break
if j == 1000000:
print('YES')
4. ์ฝ๋ ์ค๋ช
1. ์ ๋ ฅ ๋ฐ๊ธฐ
N = int(input())
numArr = []
for i in range(N):
numArr.append(int(input()))
๊ฐ ์ซ์์ ๋ํด 2๋ถํฐ 1,000,000๊น์ง์ ์๋ก ๋๋์ด ๋จ์ด์ง๋์ง ํ์ธํฉ๋๋ค. ๋ง์ฝ ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ๋ฐ๊ฒฌ๋๋ฉด "NO"๋ฅผ ์ถ๋ ฅํ๊ณ , ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ์๋ค๋ฉด "YES"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
2. ์ํธ ๋น๋ฐ๋ฒํธ ๊ฒ์ฆ
for i in range(len(numArr)):
for j in range(2, 1000001):
if numArr[i] % j == 0:
print('NO')
break
if j == 1000000:
print('YES')
๊ฐ ์ซ์์ ๋ํด 2๋ถํฐ 1,000,000๊น์ง์ ์๋ก ๋๋์ด ๋จ์ด์ง๋์ง ํ์ธํฉ๋๋ค. ๋ง์ฝ ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ๋ฐ๊ฒฌ๋๋ฉด "NO"๋ฅผ ์ถ๋ ฅํ๊ณ , ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ์๋ค๋ฉด "YES"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
** ๋ฐฑ์ค 1816๋ฒ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ฉด์ ์ซ์์ ์์ ์ฌ๋ถ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒดํฌํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ธ ์ ์์์ต๋๋ค. **
4. Github์ผ๋ก ํ์ธ
์ ์ฝ๋์ GitHub ์ฐธ์กฐ ๋งํฌ
'๐ ์๊ณ ๋ฆฌ์ฆ > BOJ(๋ฐฑ์ค)_Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ(๋ฐฑ์ค) 14252[๊ณต์ฝ์์ด] (0) | 2024.06.15 |
---|---|
BOJ(๋ฐฑ์ค) 1978[์์ ์ฐพ๊ธฐ] (0) | 2024.06.13 |
BOJ(๋ฐฑ์ค) 2503[์ซ์ ์ผ๊ตฌ] (0) | 2024.06.07 |
BOJ(๋ฐฑ์ค) 19532[์ํ์ ๋น๋๋ฉด๊ฐ์์ ๋๋ค] (0) | 2024.06.07 |
BOJ(๋ฐฑ์ค) 14568[์ฌํ ๋๋ ์ฃผ๊ธฐ] (0) | 2024.06.07 |