๋ฌธ์ ๐
๊ฒฐ๊ณผ๐
์ฝ๋๐ป
n = int(input())
a = list(map(int,input().split()))
b = []
for i in a:
if i>1:
for j in range(2,i):
if i%j == 0:
b.append(i)
else:
b.append(i)
c = set(a)-set(b)
c = list(c)
print(len(c))
ํ์ด๐ก
- ์์ ๊ฐ์ n ์
๋ต
- ๋ฐฐ์ด a ์
๋ ฅ
- ๋ฐ๋ณต๋ฌธ์ ํตํด ์์๊ฐ ์๋ ๊ฐ(1๊ณผ ์๊ธฐ์์ ์ด์ธ์ ๋ค๋ฅธ ์์ฐ์๋ก ๋๋ ์ง๋ ๊ฐ)์ ๋ฐฐ์ด b์ ์ ์ฅ
- 1์ธ ๊ฒฝ์ฐ๋ ๋ฐ๋ก ๋นผ์ ๋ฐฐ์ด b์ ์ ์ฅํด์ค๋ค(1์ ์์๊ฐ ์๋๋ค!)
- a์์ ์์๊ฐ ์๋ ๊ฐ๋ค b๋ฅผ ๋นผ์ฃผ๊ธฐ ์ํด set ์งํฉ ์ฐ์ฐ์๋ฅผ ์ด์ฉ
list๋ ๋นผ๊ธฐ๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก set์ ์ด์ฉํ์ฌ a-b๋ฅผ ์งํ, ์ดํ list๋ก ๋ค์ ๋ณํ!
- ์์์ธ ๊ฐ๋ค์ด ๋ชจ์ฌ์๋ ๋ฐฐ์ด c์ ๊ธธ์ด๋ฅผ print!
n = int(input())
a = list(map(int,input().split()))
for i in a:
if i>1:
for j in range(2,i):
if i%j == 0:
a.remove(i)
else:
a.remove(i)
print(len(a))
- ํด๋น ๋ฐฉ๋ฒ์ผ๋ก ํ์๋๋
๋ฐํ์ ์๋ฌ(ValueError)
๊ฐ ๋ฐ์ํ๋ค. ์๋ ๊ฐ์ remove๋ก ๋นผ์ฃผ๋ ค๊ณ ํ๋ ์๊ธด ์๋ฌ...? ์๋๋ฉด list์ int ์ฌ์ด์ operation์ด ๋ถ๊ฐ๋ฅํด์..? ์ ๋ชจ๋ฅด๊ฒ ๋ค...
์ฐธ๊ณ ๐
๐ [๋ฐฑ์ค] 1978๋ฒ: ์์ ์ฐพ๊ธฐ - ํ์ด์ฌ
๋ค๋ฅธ ์ฌ๋์ ํ์ด๐ค
def prime_list(n):
sieve=[True] * (n+1)
for i in range(2, int(n ** 0.5)+1):
if sieve[i] == True:
for j in range(i+i, n+1 , i):
sieve[j]=False
return [i for i in range(2,n+1) if sieve[i]==True]
- ์๋ผํ ์คํ
๋ค์ค์ ์ฒด : ๋ฒ์์์ ํฉ์ฑ์๋ฅผ ์ง์ฐ๋ ๋ฐฉ์์ผ๋ก ์์๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ
์์๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ ์ค์ ๊ฐ์ฅ ํจ์จ์ด ์ข์ ๋ฐฉ๋ฒ์ด๋ค.
n = int(input())
numbers = map(int, input().split())
sosu = 0
for num in numbers:
error = 0
if num > 1 :
for i in range(2, num):
if num % i == 0:
error += 1
if error == 0:
sosu += 1
print(sosu)
- ๋์ ๋๋ต์ ์ธ ํ์ ๋น์ทํ๋ค. 1๊ณผ ์๊ธฐ ์์ ์ ์ ์ธํ ์ซ์๋ก ๋๋์์ ๋, 0์ผ๋ก ๋๋์ด ๋จ์ด์ง๋ฉด error ๋ณ์์ 1์ ๋ํด์ค๋ค. ์ดํ error ๋ณ์๊ฐ 0์ด๋ฉด 1๊ณผ ์๊ธฐ ์์ ์ ์ ์ธํ ์ซ์๋ก๋ ๋๋์ด ๋จ์ด์ง์ง ์์ ๊ฒ์ด๋ฏ๋ก ์์๊ฐ ๋๋ค.
- ์์์ธ ๊ฒฝ์ฐ, sosu ๋ณ์์ 1์ ์ถ๊ฐํด์ for๋ฌธ์ด ๋ชจ๋ ๋๋ ํ sosu ๋ณ์๋ฅผ ์ถ๋ ฅํ๋ค.