首页 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
资讯 业界资讯 软件杂谈 编程开发 网站建设 网络观查 搜索引擎 移动应用 网站运营 网络地图
开发 移动开发 Web前端 架构设计 编程语言 互联网 数据库 系统运维 云计算 开发杂谈
[编程语言] OJ刷题之《蚂蚁感冒》
OJ刷题之《蚂蚁感冒》

题目描述
100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。这些蚂蚁中,有1只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。
请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。
输入
第一行输入一个整数n (1< n < 50), 表示蚂蚁的总数。接着的一行是n个用空格分开的整数 Xi (-100 < Xi < 100), Xi的绝对值,表示蚂蚁离开杆子左边端点的距离。正值表示头朝右,负值表示头朝左,数据中不会出现0值,也不会出现两只蚂蚁占用同一位置。其中,第一个数据代表的蚂蚁感冒了。
 

输出
 要求输出1个整数,表示最后感冒蚂蚁的数目。
样例输入
3
5 -2 8
样例输出
1
提示
请严格按要求输出,不要画蛇添足地打印类似:请您输入...” 的多余内容。
 
代码如下:
#include <iostream>
using namespace std;
int abs(int x);
int main()
{
    int N;
    int ant[50];
    cin >> N;
    int left=0,right=0;
    for(int i=0; i<N; ++i)
    {
        cin >> ant[i];
    }
    for(int i=1; i<N; ++i)
    {
        if(ant[i]<0&&abs(ant[i])>abs(ant[0]))
        {
            left++;
        }
        if(ant[i]>0&&abs(ant[i])<abs(ant[0]))
        {
            right++;
        }
    }
    if((ant[0]<0&&right==0)||(ant[0]>0&&left==0))
    {
        cout << "1" <<endl;
    }
    else
    {
        cout << left+right+1 << endl;
    }
return 0;
}

int abs(int x)
{
    if(x<0)
        return -x;
    return x;
}

 
运行结果


 
这次“抄”了一把,这并不是我自己做的,,,把思维转化为计算机语言方面我还得好好努力啊。


 此文从网络中自动搜索生成,不代表本网站赞成被搜索网站的内容或立场    查看原文
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-21 16:02:43
 
  网站联系 软件世界网-www.sjsjw.com ©2014 蜀ICP备06016416号 三峰网旗下网站