mcbbnb 2023-08-20 20:42 采纳率: 85.7%
浏览 20

c++戳气球问题!!


体育老师拿出nn个气球从左到右排成一排,每个气球上面都会有一个数字编号a i
​你可以选择扎破某一些气球,但是最多只能扎破n-1n−1个气球,至少要剩下一个气球留在场上。
假设目前你已经扎破了一些气球,场上还剩下mm个气球,那么胜利的规则是这mm个气球中的每一个气球i(1 \leq i \leq m)i(1i≤m),如果气球上的数 i 恰好等于ii,那么你将赢得游戏的胜利!
由于你的体力有限,所以你需要找到最小的扎破气球的数目,使得你能获得游戏的胜利,并把这个最小的数目输出出来;而如果无论怎么扎破气球都没办法赢得胜利,那么输出-1.
输入格式
第一行输入一个整数nn表示气球的数量;
第二行输入nn个整数a 1a 2...... a n,表示第ii个气球上写着的数字。
输出
输出能赢得游戏胜利的,最小的扎破气球的个数。 如果不能赢得游戏,输出 -1。
输入数据 1
3
2 1 2
输出数据 1
1
输入数据 2
3
2 2 2
输出数据 2
-1
输入数据 3
10
3 1 4 1 5 9 2 6 5 3
输出数据 3
7
输入数据 4
1
1
输出数据 4
0
样例说明
样例1:把第一个气球扎破之后,剩下气球的数字序列是1212,恰好使得第11个气球数字是11,第二个气球数字是22。
样例2:无论扎破哪些气球,都不能满足胜利条件。
  • 写回答

2条回答 默认 最新

  • 2301_76175955 2023-08-20 21:34
    关注

    oiclass

    评论

报告相同问题?

问题事件

  • 请提交代码 8月20日
  • 创建了问题 8月20日

悬赏问题

  • ¥100 用数字代替ip主机号断与旋转链接号段
  • ¥20 学校内手机热点不能使用
  • ¥15 qwen模型微调训练时grad_norm为0.0或为nan
  • ¥15 若依- Spring cloud-plus集成阿里云schedulerX再控制台应用管理找不到实例
  • ¥15 用vs2022 fortran调试只无法查看数组的值,显示发生未指定的错误
  • ¥50 SGD Gateway 是否可以与 SGD Server 装在一台服务器上?
  • ¥15 gge梦幻西游的地图制作
  • ¥15 对计算机的学习没有方向
  • ¥15 用VBA抓取淘宝的发票号码和下载发票pdf遇到的问题
  • ¥20 java excel导出有什么解决方案