문제
https://www.acmicpc.net/problem/1978

소스 코드
n=int(input())
arr=list(map(int, input().split()))
s=True
num=0
for i in arr:
if i==1:
continue
for j in range(2, i):
if i%j==0:
s=False
if s==True:
num+=1
s=True
print(num)
정리
소수를 찾아라!!! 빠라밤~ 빠라람~ 빠밤!!!
소수란 무엇이냐?
소수란 1과 자기자신을 제외하고 약수를 가지지 않는 1보다 큰 자연수를 말한다.
그러므로, 입력한 값을 1을 제외하고 2부터 해당 값까지 나누었을때 나머지가 0이 나오면 안된다!
왜냐? 나머지가 0이 나온다는 것은 해당 약수를 가진다는 말이므로 소수가 아니기 때문이다.
위를 for문과 if문을 사용해 코딩한 후, 소수인지 아닌지를 True, False로 구분하여 횟수를 세어 계산했다.
'Python > Baekjoon' 카테고리의 다른 글
| [백준] 10156번 : 과자 (Python) (1) | 2025.08.06 |
|---|---|
| [백준] 10872번 : 팩토리얼 (Python) (0) | 2024.11.25 |
| [백준] 1152번 : 단어의 개수 (Python) (0) | 2024.11.25 |
| [백준] 11654번 : 아스키 코드 (Python) (1) | 2024.11.25 |