소수구하기-백준 1929 질문
350
投稿した質問数 1
안녕하세요 강의 너무너무 잘보고 있습니다
소수구하기 백준 1929 강의 중
for(소수의 배수값을 N까지 반복)
for (int j=i+i; j<=N; j=j+i){ }이 부분에서 for문 시작 ( j=i+i )이랑 증감식 ( j=j+i ) 이 이해가 잘 되지않아
질문 남깁니다.
그리고 저 for문은 컨티뉴일 경우에는 실행이 안되는건가요 ?(ex)4이면 컨티뉴 >> 하고 for문을 도는건가요?)
감사합니다
回答 1
0
안녕하세요, 인프런 AI 인턴입니다.
tmdwl1110님, 소수 구하기 문제에서 언급하신 for문의 로직은 에라토스테네스의 체 알고리즘을 구현하는 부분입니다.
for문의 시작 조건인 (j=i+i)는 i가 소수인 경우, i의 배수들을 제거하기 시작하는 지점을 나타냅니다. 여기서 i+i (즉, 2*i)부터 시작하는 이유는 i의 2배수부터 i의 배수가 됨으로, 이미 i는 소수로 판별되었기 때문에 그 다음 배수부터 확인하면 됩니다.
증감식인 (j=j+i)는 j의 값을 i만큼 증가시켜 다음 i의 배수로 이동하게끔 합니다. 이는 i의 배수를 모두 찾아서 체크하는 과정을 반복적으로 수행하기 위함입니다.
continue 키워드를 만나면 그 이후의 for문 내부의 로직을 실행하지 않고, for문의 다음 반복(즉, j=j+i 이후의 다음 배수)으로 진행합니다. 즉, continue는 해당 반복을 건너뛰고 for문의 다음 반복을 계속한다는 것을 의미합니다.
소수 판별 문제에서는 continue를 사용하여 이미 체크된 배수(즉, 소수가 아닌 수)를 다시 체크하지 않도록 효율성을 높일 수 있습니다.
백준 1940 주몽의 명령 시간복잡도
0
59
0
다음영상이 문제 풀이 영상이라고 하셨는데 문제풀이 영상이 누락되어있는 것 같습니다
0
127
1
코딩테스트 디버깅
0
347
1
탐색 순서 질문
0
148
1
[P11726 2*N 타일채우기] top down 방식을 사용하니 런타임 에러가 발생합니다.
0
105
1
2018 연속된 자연수의 합 구하기 백준 사이트에서 메모리 초과 오류가 발생합니다.
0
201
1
1강 시간복잡도 중간에 중첩for문 직전에 상수는 상관없어요 하신 부분이 이해가 안됩니다
0
159
1
왜 int, long은 안되는지 궁금합니다.
0
224
1
DNA 비밀번호 (백준 12891) 통과가 안됩니다.
0
525
2
LCA 빠르게 구하기 Java 코드 시간초과
0
244
1
스택문제 백준 1874
1
459
1
백준11659 구간합 런타임 에러
0
306
1
백준 2178 미로탐색 질문 입니다.
0
448
1
구간합구하기1 (백준11659)
0
422
1
혹시 다른 ide에서 잘 돌아가는 프로그램이
0
349
1
내림차순으로 정렬하기 강의에서..
0
267
1
백준 11720 숫자의 합 질문 있습니다
0
433
1
(숫자의 합)1<=N <=100 사이의 값
0
383
1
12891_DNA비밀번호
0
633
3
숫자의 합 구하기
0
391
1
안녕하세요 질문있습니다.
0
336
0
union 코드에 질문 있습니다.
0
401
2
[그리디 실전 문제] 최솟값을 만드는 괄호 배치 찾기 (백준 1541) - 반례를 못찾겠습니다 ㅠㅠ
1
309
1
[이진 탐색 실전 문제] 원하는 정수 찾기 편 질문
0
505
1

