zoukankan      html  css  js  c++  java
  • [HDU]1257最少拦截系统

    http://acm.hdu.edu.cn/showproblem.php?pid=1257

    第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.

    我的思路是保存依次保存现在每个拦截系统能拦截的最高的高度,接下来输入的每一个高度,依次和这若干拦截系统的现在所能拦截的最高高度比较吗,若某次小于这个高度,就替代这个高度,若比这些拦截系统的高度都高,就重新创造一个拦截系统。

    #include"stdio.h"
    #include"stdlib.h"
    int a[100000],b[100000];   //a[]保存导弹高度,b[]保存每套系统的最高拦截高度 
    int main()
    {
         int t,n,i,j,count;        //count为系统数目 
         while(scanf("%d",&n)!=EOF)
         {
                count=0;
                b[0]=0;
                for(i=0;i<n;i++)
                {
                    scanf("%d",&a[i]);
                    for(j=0;j<=count;j++)
                    {
                       if(a[i]<b[j])
                       {
                          b[j]=a[i];
                          break;
                       }
                       else if(j==count)
                       {
                          count++;
                          b[count]=a[i];
                         // printf("%d ",a[i]);
                          break;
                       }
                    }
                }
                printf("%d
    ",count);
         }
    }
  • 相关阅读:
    数据库
    linux
    linux
    python_函数进阶1
    python_函数初识
    python_文件操作
    python_基础数据类型补充
    python 小数据池,代码块总览
    python_基础数据类型二
    python_基础数据类型一
  • 原文地址:https://www.cnblogs.com/sjy123/p/3238305.html
Copyright © 2011-2022 走看看