#AEAI06010. 受观察次数限制的视角选择

受观察次数限制的视角选择

题目描述

目标被遮挡时,机器人可以主动移动到若干候选视角继续观察。每个视角会带来观察代价和风险;只有视角真正可见时,才会提升三类置信度并减少遮挡量。你需要在最多 kmax 次观察内,判断是否可以安全进入执行状态。

初始有三类置信度 c1,c2,c3、遮挡量 occ 和初始风险 risk0。融合分数为 w1*c1 + w2*c2 + w3*c3。一个状态可执行当且仅当:风险不超过 risk_thrc3 >= stable_thr,遮挡量降到 0,且融合分数不低于 score_thr

可以选择不观察;也可以枚举长度为 1..kmax 的不重复视角序列。访问某视角时,总代价增加 view_cost,总风险增加 view_risk;若 visible=1,则三类置信度分别增加并最高截到 1.0,遮挡量减少但不低于 0。搜索过程中一旦风险超过阈值,该序列无效。

在所有可执行方案中,选择 (总代价, 总风险, 序列长度, 视角编号序列, 最终分数) 字典序最小的方案。

输入格式

第一行输入 c1 c2 c3 occ risk0。第二行输入:

w1 w2 w3 score_thr risk_thr stable_thr

第三行输入 m kmax。接下来 m 行,每行输入一个候选视角:

vid view_cost view_risk visible dc1 dc2 dc3 docc

输出格式

若无法达到可执行状态,输出:

SAFE_STOP

若选择了若干视角,输出:

cost len vid1 vid2 ... score READY_TO_EXECUTE

若无需观察即可执行,输出:

cost 0 score READY_TO_EXECUTE

其中 costscore 保留 6 位小数。

数据范围与测试提示

  • 正式测试会覆盖样例没有出现的边界输入,请不要依赖样例规模或样例顺序写特判。
  • 输出只包含题目要求的字段,不要输出调试信息;浮点结果按题面要求保留 6 位小数。
  • 可以选择不观察;观察序列长度为 1..kmax,且视角不能重复。
  • 风险一旦超过阈值,该序列立即无效;可执行方案按总成本、总风险、长度、视角序列和最终分数字典序比较。
  • 初始状态可能已满足条件并输出 0 次观察;不可见视角仍消耗代价和风险但不提升状态。

样例

输入样例 1

0.4 0.4 0.3 1 0.1
0.4 0.3 0.3 0.7 1.0 0.6
2 2
1 3 0.1 1 0.2 0.3 0.4 1
2 1 0.1 0 0.5 0.5 0.5 1

输出样例 1

SAFE_STOP

输入样例 2

0.8 0.8 0.8 0 0.1
0.4 0.3 0.3 0.7 1.0 0.6
1 1
1 3 0.1 1 0.1 0.1 0.1 1

输出样例 2

0.000000 0 0.800000 READY_TO_EXECUTE