感冒对测试atg-ab在生肖日办事有无影响响

6551人阅读
比赛常用及心得(33)
长100厘米的细长直杆子上有n只蚂蚁。它们的头有的朝左,有的朝右。 每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒。 当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。 这些蚂蚁中,有1只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。 请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。
【数据格式】
第一行输入一个整数n (1 & n & 50), 表示蚂蚁的总数。
接着的一行是n个用空格分开的整数 Xi (-100 & Xi & 100), Xi的绝对值,表示蚂蚁离开杆子左边端点的距离。正值表示头朝右,负值表示头朝左,数据中不会出现0值,也不会出现两只蚂蚁占用同一位置。其中,第一个数据代表的蚂蚁感冒了。
要求输出1个整数,表示最后感冒蚂蚁的数目。
例如,输入:
程序应输出:
再例如,输入:
-10 8 -20 12 25
程序应输出:
资源约定:
峰值内存消耗 & 256M
CPU消耗 & 1000ms
首先明白两只蚂蚁碰撞之后掉头和穿行过去是一样的,可以把穿行看做碰撞后掉头了,然后两个蚂蚁交换了,而是哪一只蚂蚁对结果不影响。
那么,假如第一只感冒蚂蚁向右走,那么碰到所有想左走的都会被感染,而感染后的蚂蚁必定是向左走的,那么他会把左边向右走的都感染了。
向左走的也是这样。
所以 ans = 左边向右走的 &+ 右边向左走的 + 1(本身)。
当然还有特殊情况,第一只感染的向右走,右边的都在向右走,那么速度一样的话它不会感染其他所有,所以 ans = 1,相反也是。
这是我个人思路,欢迎指正
nyoj题目:http://acm.nyist.net/JudgeOnline/problem.php?pid=990
我的代码:
#include &cstdio&
#include &algorithm&
struct Node
Node a[100];
int comp(Node a1,Node a2)
if(a1.x!=a2.x)
return a1.x&a2.x;
int main()
while(~scanf(&%d&,&n))
for(int i=0;i&n;i++)
scanf(&%d&,&x);
a[i].dis=x&0?-1:1;
a[i].x=abs(x);
a[i].num=i+1;
sort(a,a+n,comp);
int tmp=0,left=0,right=0,ans=0;
for(int i=0;i&n;i++)
//左边向右走的
if(a[i].num==1)
if(a[i].dis==1)
for(int i=tmp+1;i&n;i++) //右边向左走的
if(a[i].dis==-1)
if(a[tmp].dis==1 && right==0 || a[tmp].dis==-1 && left==0)
ans=left+right+1;
printf(&%d\n&,ans);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:574674次
积分:8736
积分:8736
排名:第1608名
原创:314篇
评论:127条
(1)(2)(1)(4)(2)(1)(1)(2)(5)(10)(7)(2)(2)(8)(19)(42)(24)(37)(21)(1)(6)(17)(21)(10)(6)(1)(5)(6)(19)(3)(3)(5)(8)(2)(14)(2)流行性感冒试题及答案_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
流行性感冒试题及答案
上传于||文档简介
&&流​感
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢超准!看感冒后表现测试你的真实星座!_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
超准!看感冒后表现测试你的真实星座!
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢百度拇指医生
&&&普通咨询
您的网络环境存在异常,
请输入验证码
验证码输入错误,请重新输入}

我要回帖

更多关于 ab压力测试工具 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信