编程题
### 问题描述 在幻想大陆中,勇敢而机智的小蓝为了拯救被邪恶怪物占领的塔楼,踏上了冒险之旅。然而,他最心仪的第 $m$ 个塔楼却无法购买。小蓝手中有一些金币 $s$,而塔楼之间的距离都是相等的。每个塔楼都有自己独特的价值 $w_i$。小蓝购买塔楼有一个原则:如果第 $m$ 个塔楼的左右两边存在距离最近且能购买的塔楼,他必须购买当前塔楼。然而,如果购买不了当前塔楼,小蓝将结束购买。当塔楼之间的距离相等时,小蓝可以任意选择其中一边的塔楼购买。 为了战胜邪恶的怪物,小蓝决定购买尽可能多的塔楼。你能帮助他计算出最终能购买多少塔楼吗? ### 输入格式 第一行输入三个整数 $s,n$ 和 $m$,表示小蓝手中的金币数量、塔楼的总数和小蓝心仪的塔楼编号 $(1\le s \le 10^9,1 \le m \le n \le 10^5)$。 第二行包含 $n$ 个整数 $w_i$,表示每个塔楼的价值 $(0 \le w_i \le 10^5)$。其中,当 $w_i$ 为 $0$ 时表示该塔楼无法购买,否则可以购买,数据保证只有 $w_m=0$。 ### 输出格式 输出一行,包含一个整数,表示小蓝最多能购买多少塔楼。 ### 样例输入 ``` 4 3 2 5 0 3 ``` ### 样例输出 ``` 1 ```
查看答案
赣ICP备20007335号-2