01. 수학

2026. 3. 7. 19:32·CS/알고리즘

1. 소수 판별 (Primality Test)

1.1 단일 수 판별

  • 원리: 합성수 n의 약수는 반드시 루트 n 이하에 존재한다.
  • 복잡도: O(sqrt(N))
bool IsPrime(int n) {
    if (n <= 1) return false;
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) return false;
    }
    return true;
}

1.2 에라토스테네스의 체 (범위 내 판별)

  • 원리: 2부터 시작해 소수의 배수들을 소거하며 소수를 남기는 방식.
  • 최적화: 내부 루프를 i*i에서 시작하여 중복 계산을 방지한다.
vector<int> sieve(int n) {
    vector<bool> state(n + 1, true);
    state[0] = state[1] = false;
    for (int i = 2; i * i <= n; i++) {
        if (!state[i]) continue;
        for (int j = i * i; j <= n; j += i) state[j] = false;
    }
    // state[i]가 true인 값들이 소수
}

2. 유클리드 호제법 (GCD & LCM)

  • GCD (최대공약수): a % b 연산을 반복하여 나머지가 0이 될 때의 나누는 수.
  • LCM (최소공배수): (a * b) / GCD 성질을 활용.
int gcd(int a, int b) {
    if (b == 0) return a;
    return gcd(b, a % b);
}

int lcm(int a, int b) {
    return (a / gcd(a, b)) * b;
}

'CS > 알고리즘' 카테고리의 다른 글

03. DFS(Depth-First Search)  (0) 2026.03.10
02. BFS(Breadth-First Search)  (0) 2026.03.07
알고리즘 OT  (0) 2026.03.07
'CS/알고리즘' 카테고리의 다른 글
  • 03. DFS(Depth-First Search)
  • 02. BFS(Breadth-First Search)
  • 알고리즘 OT
coding-l7
coding-l7
  • coding-l7
    coding-l7rl0
    coding-l7
  • 글쓰기 관리
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 기타
      • 유니티
        • OfficeWorkerRunning
      • 프로그래밍 언어
        • C
        • C#
        • C++
      • CS
        • 컴퓨터 구조
        • 운영체제
        • 자료구조
        • 알고리즘
        • 네트워크
        • 컴퓨터 그래픽스
      • 물리 기반 시뮬레이션
        • 기초
        • Cloth Simulation
        • Fluid Simulation
      • 코딩 테스트
        • 프로그래머스
        • 백준
      • 독서
        • [ 뇌를 자극하는 윈도우즈 시스템 프로그래밍 ]
        • [ CUDA 기반 GPU 병렬 처리 프로그래밍 ]
      • 영어
        • Basic Grammar In Use
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
    • 포트폴리오
  • 공지사항

  • 인기 글

  • 태그

    파동 난류
    wave simulation
    OpenGL
    narrow range filter screen-space fluid rendering
    Flip
    pbd
    collision
    정수 승격
    유체 시뮬레이션
    C언어
    입자 기반 방법
    명령어
    bilateral blur
    액체 시뮬레이션
    cloth simulation
    실수
    position based dynamics
    RAM
    screen space fluid rendering
    물리 기반 시뮬레이션
    fluid simulation
    시스템 프로그래밍
    screen-space rendering
    그리드 기반 방법
    fluid implicit particle
    컴퓨터 구조
    상수
    surface turbulence
    GLSL
    jump table
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
coding-l7
01. 수학
글쓰기
상단으로

티스토리툴바