#AEAI02007. 多邻居抓取方式投票
多邻居抓取方式投票
题目描述
单个历史模板有时会受到噪声影响,具身智能部因此改用多个近邻共同投票来决定抓取方式。每个历史样本记录一种抓取类别,新场景的类别由最近的 k 个样本裁决。
请先按加权平方距离和样本编号选出最近的 k 个历史样本,再统计这些近邻中各类别的票数及距离总和。最终类别按票数更高、距离和更小、类别编号更小的顺序确定。
注意:类别裁决只基于已入选的 k 个近邻;没有入选的样本不能贡献票数或距离和。
输入格式
- 第一行包含 n d C k。
- 第二行包含 d 个距离权重。
- 随后 n 行每行包含 d 个历史特征和类别标签。
- 最后一行包含 d 个查询特征。
输出格式
- 第一行输出最终抓取方式类别编号。
- 第二行输出该类别票数。
- 第三行输出该类别入选邻居距离总和。
数据范围与约束
1 <= k <= n <= 200001 <= C标签在 1..C
判定规则
使用标准输出比较。浮点结果按题面保留 6 位或 10 位小数;阈值等号、无可行分支和 Tie-break 按下列规则处理。
- 先按距离、样本编号选最近 k 个样本。
- 类别按票数高、距离和小、类别编号小裁决。
- 距离和保留 6 位。
样例
输入样例 1
4 2 3 3
1 1
0 0 1
1 0 1
0 2 2
5 5 3
0 0
输出样例 1
1
2
1.000000
输入样例 2
4 1 2 2
1
0 1
2 2
1 1
3 2
1
输出样例 2
1
2
1.000000
样例解释
样例 1 中最近三个样本里类别 1 获得两票,因此输出类别 1。样例 2 展示了先按距离和编号选近邻,再对入选样本投票的流程。