백준 4948 : 베르트랑 공준
백준 (C99)/기본수학 2단계 (完) 2022. 2. 1. 18:34

오늘부턴 풀이도 같이 써보겠다. 우선, 소수를 구하는 방법은 이전 에라토스테네스의 체를 사용하겠습니다. https://namu.wiki/w/에라토스테네스의%20체 에라토스테네스의 체에 대한 문서입니다. 참고하시면 되겠습니다 간단하게 요약하자면, 2~N까지의 수를 놓습니다. 그리고 여기서 지워지지 않은 수 중 가장 작은 수는 소수입니다. 그리고 그 소수의 배수를 모두 지웁니다, 이 과정을 반복하면 결과적으로 소수만 남게됩니다. 이전 문제에서 에라토스테네스의 체를 구현하여 소수 구하는 방법을 써놨으니 그 코드를 이용하면 됩니다. 범위만 정해주면 되는 문제이기때문에 사실상 문제의 핵심은 '에라토스테네스의 체'의 구현입니다. #include int solve() { int M = 1, N, res[1000000..

백준 11653 : 소인수분해
백준 (C99)/기본수학 2단계 (完) 2022. 1. 31. 21:09

#include int solve() { int N, div = 2; scanf("%d", &N); if(N == 1) return 0; while(N != 1) { if(N % div == 0) { N /= div; printf("%d\n", div); }else div++; } } int main() { solve(); return 0; } 이번에도 쉬운 문제, div를 1씩 올려가면서 판별했다

백준 2581 : 소수
백준 (C99)/기본수학 2단계 (完) 2022. 1. 31. 21:00

#include int solve() { int M, N, cur, min = 10000, res = 0, check = 0, exist = 0; scanf("%d", &M); scanf("%d", &N); cur = M; while(cur

백준 1978 : 소수 찾기
백준 (C99)/기본수학 2단계 (完) 2022. 1. 31. 20:34

#include int solve() { int num[100], cnt[100] = {0}, test, res = 0; scanf("%d", &test); for(int i=0;i