K
KRYFT Problem Bank
AI/ML 보통 코딩

K-Means 클러스터링

K-Means 알고리즘을 직접 구현하세요

30분
100점
#3641

문제 설명

K-Means 클러스터링 알고리즘을 구현하세요.

알고리즘

  1. K개의 초기 중심점(centroid)을 무작위 선택
  2. 각 데이터 포인트를 가장 가까운 중심점에 할당
  3. 각 클러스터의 새로운 중심점 계산
  4. 중심점이 변하지 않을 때까지 2-3 반복

입력 형식

첫째 줄에 데이터 개수 N, 클러스터 수 K, 최대 반복 횟수 max_iter

다음 N줄에 각 데이터 포인트의 x, y 좌표

다음 K줄에 초기 중심점의 x, y 좌표

출력 형식

각 데이터 포인트가 속한 클러스터 번호 (0-indexed)

힌트

실행 버튼을 눌러 코드를 실행하세요.