zoukankan      html  css  js  c++  java
  • hdu 1257 最少拦截系统

    最少拦截系统

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 17230    Accepted Submission(s): 6833


    Problem Description
    某国为了防御敌国的导弹突击,发展出一种导弹拦截系统.可是这样的导弹拦截系统有一个缺陷:尽管它的第一发炮弹可以到达随意的高度,可是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.因为该系统还在试用阶段,所以仅仅有一套系统,因此有可能不能拦截全部的导弹.
    怎么办呢?

    多搞几套系统呗!你说说倒蛮easy,成本呢?成本是个大问题啊.所以俺就到这里来求救了,请帮助计算一下最少须要多少套拦截系统.

     

    Input
    输入若干组数据.每组数据包含:导弹总个数(正整数),导弹依此飞来的高度(雷达给出的高度数据是不大于30000的正整数,用空格分隔)
     

    Output
    相应每组数据输出拦截全部导弹最少要配备多少套这样的导弹拦截系统.
     

    Sample Input
    8 389 207 155 300 299 170 158 65
     

    Sample Output
    2
     
    思路:类似于此题http://blog.csdn.net/fyxz1314/article/details/37832139
    代码1:
    #include<stdio.h>
    int main ()
    {
        int n,a[1000],b[1000],i,j,t;
        while (~scanf("%d",&n))
        {    
    		for(i=0;i<n;i++)
    		{
    			scanf("%d",&a[i]);
    			b[i]=0;   
    		}
    		int num=0;
    		for(i=0;i<n;i++)
    		{
    			if(b[i]==0)
    			{   
    				b[i]=1;
    				t=a[i];
    				for(j=i+1;j<n;j++)
    				{
    					if((b[j]==0)&&(t>=a[j]))
    					{
    						t=a[j];
    						b[j]=1;
    					}
    				}
    				num++;
    			}
    			
    		}
    		
    		printf("%d
    ",num);
    	}
    	return 0;
    }
    

    代码2:
    #include<stdio.h>
    int main ()
    {
        int n,a[1000],b[1000],i,j,t;
        while (~scanf("%d",&n))
        {    
          for(i=0;i<n;i++)
          {
            scanf("%d",&a[i]);
            b[i]=0;   
          }
          int num=0;
          for(i=0;i<n;i++)
          {
              if(b[i]==1) continue;
              t=a[i];
              for(j=i+1;j<n;j++)
              {
                  if((b[j]==0)&&(t>=a[j]))
                  {
                      t=a[j];
                      b[j]=1;
                  }
              }
              num++;
          }
          
          printf("%d
    ",num);
        }
        return 0;
    }
    
    


  • 相关阅读:
    Finite Difference Method with Mathematica
    评论
    The Woman in Red Is Seen as a Threat by Other Wom
    Why Does Everyone Else Appear to Be Succeeding?
    The Sorrows of Young Werther
    【洛谷P5607】无力回天 NOI2017
    【YbtOJ#532】往事之树
    【YbtOJ#582】大收藏家
    【牛客Wannafly挑战赛23 F】计数
    【YbtOJ#573】后缀表达
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/6752852.html
Copyright © 2011-2022 走看看