本题实现三维特征上的 K-Means,接口为 Solution.kMeans(points, k),返回 k 个簇中心。
实现 K-Means 聚类算法。
给定 n 个样本的 3 维特征,将其划分为 k 个簇,输出各簇中心坐标。
算法步骤:
第一行包含两个整数 n,k(1≤k≤n≤500),表示用户数量和聚类簇数。
接下来 n 行,每行 3 个浮点数 x1,x2,x3(0≤xi≤100),分别表示用户的消费金额(归一化)、购买频次(归一化)、最近购买天数(归一化)。
输出 k 行,每行 3 个浮点数,表示各簇中心的坐标,保留 2 位小数。
按簇编号顺序输出(簇 0,簇 1,…,簇 k−1)。
输入
6 2
10.0 20.0 5.0
12.0 22.0 6.0
11.0 21.0 4.0
80.0 5.0 50.0
82.0 6.0 48.0
78.0 4.0 52.0
输出
11.00 21.00 5.00
80.00 5.00 50.00
说明
输入
4 2
0.0 0.0 0.0
1.0 1.0 1.0
100.0 100.0 100.0
99.0 99.0 99.0
输出
0.50 0.50 0.50
99.50 99.50 99.50
说明
第一次迭代后即收敛。簇 0 中心为 (0.5,0.5,0.5),簇 1 中心为 (99.5,99.5,99.5)。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册