求助!!!防御导弹问题

bailiky 2019-12-31 10:46:39
题目描述
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截 系统有一个缺陷:虽然它的第一发炮弹能够达到任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试 用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。

输入描述
输入一个整数n,表示有n个导弹
然后n行,分别表示导弹依次飞来的高度(雷达给出高度数据是不大于30000的正整数)

输出描述
整数M。表示:这套系统最多能拦截 M 枚导弹.

#include "stdio.h"
int main()
{
int i,m,max,sum=0;
int a[100];
scanf("%d",&i);
for(m=0;m<i;m++)
scanf("%d",&a[m]);
max=a[0];
for(m=0;m<i;m++)
{
if(max>=a[m])
{sum++;max=a[m];}
}
printf("%d\n",sum);
return 0;
}

上面是我的代码,求大神指教,我到底错在哪里。
学C萌新,请求指点。
...全文
84 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
源代码大师 2021-05-06
  • 打赏
  • 举报
回复
希望对你有帮助:https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助:https://blog.csdn.net/it_xiangqiang/category_10768339.html
寻开心 2020-01-01
  • 打赏
  • 举报
回复
错在算法上。算法错了,代码就重写吧。

这个问题是要从敌人发射的导弹的高度的序列当中,找到一个最长的递减的序列
在序列里面的都可以拦截,其他的就等着挨揍就行了

top啦它 2020-01-01
  • 打赏
  • 举报
回复
第一发炮弹是最高的,后面再有比第一发高的炮弹是无法拦截的。

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧