zoukankan      html  css  js  c++  java
  • 蚂蚁感冒

    /*问题描述
      长100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。
    
      每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。
    
      当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。
    
      这些蚂蚁中,有1只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。
    
      请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。
    输入格式
      第一行输入一个整数n (1 < n < 50), 表示蚂蚁的总数。
    
      接着的一行是n个用空格分开的整数 Xi (-100 < Xi < 100), Xi的绝对值,表示蚂蚁离开杆子左边端点的距离。正值表示头朝右,负值表示头朝左,数据中不会出现0值,也不会出现两只蚂蚁占用同一位置。其中,第一个数据代表的蚂蚁感冒了。
    输出格式
      要求输出1个整数,表示最后感冒蚂蚁的数目。
    样例输入
    3
    5 -2 8
    样例输出
    1
    样例输入
    5
    -10 8 -20 12 25
    样例输出
    3
    排除两端的不可能被感冒的后,要从第一个感冒的蚂蚁来考虑了
    
    有两种情况:
    
    一种是第一个感冒的蚂蚁的向左走
    
    向左走的这种情况要判断左端是否有蚂蚁向右走,向右走的肯定会和第一个感冒的碰面,被感冒,在判断右边的蚂蚁是否
    
    有向左走的,有则会被感冒
    
    另一种情况是第一个蚂蚁是向右走
    
    先判断感冒蚂蚁右边有多少是往左走的,往左走的会被感冒,在左边的有多少个蚂蚁向右走的,有则被感冒
    以感冒的蚂蚁为中心,两边向中间走的蚂蚁都会感冒*/
    package test;
    import java.util.*;
    public class 蚂蚁感冒 {
        public static void main(String arg[]){
            int count=0;
            Scanner input=new Scanner(System.in);
            int n=input.nextInt();
            int[] ant=new int[n+1];
            for(int i=1;i<=n;i++){
                ant[i]=input.nextInt();
            }
            if(n>2){
                for(int i=2;i<=n;i++){
                    if(Math.abs(ant[1])<Math.abs(ant[i])&&ant[i]<0){//距离大于感冒的蚂蚁且蚂蚁向左走
                        count++;
                    }
                    if(Math.abs(ant[1])>Math.abs(ant[i])&&ant[i]>0){//距离小于感冒的蚂蚁且蚂蚁向右走
                        count++;
                    }
                }
            }else{
                if(Math.abs(ant[1])>Math.abs(ant[2])&&ant[2]>0&&ant[1]<0) count++;
                if(Math.abs(ant[1])<Math.abs(ant[2])&&ant[1]>0&&ant[2]<0) count++;
            }
            if(count!=0)System.out.print(count+1);//加上原本就感冒的蚂蚁
            else System.out.print(1);
        }
    
    }
  • 相关阅读:
    Selenium 疑问之一:WebDriver 获得弹出窗口(转)
    Selenium 疑问之三:Selenium2.0 对于Wrapped元素的click()不起作用怎么办?
    [转]网站性能工具Yslow的使用方法
    Hudson + Ant + SVN + Tomcat配置详解
    Selenium 疑问之二:如何使页面滚动条移动到指定元素element的位置处?
    【转】组合测试法中的全对偶测试法
    Ant 之property 总结
    [转载]使用Selenium2测试含有iframe的Ajax网页
    Nginx反向代理WebSocket链接失败问题
    WebSocket语法糖
  • 原文地址:https://www.cnblogs.com/ljs-666/p/8595612.html
Copyright © 2011-2022 走看看