螞蟻

一個靠巧妙得出答案的題目:

歷屆試題 螞蟻感冒
問題描述
  長100厘米的細長直桿子上有n只螞蟻册招。它們的頭有的朝左岔激,有的朝右。

  每只螞蟻都只能沿著桿子向前爬是掰,速度是1厘米/秒虑鼎。

  當(dāng)兩只螞蟻碰面時,它們會同時掉頭往相反的方向爬行键痛。

  這些螞蟻中炫彩,有1只螞蟻感冒了。并且在和其它螞蟻碰面時絮短,會把感冒傳染給碰到的螞蟻江兢。

  請你計算,當(dāng)所有螞蟻都爬離桿子時丁频,有多少只螞蟻患上了感冒杉允。
輸入格式
  第一行輸入一個整數(shù)n (1 < n < 50), 表示螞蟻的總數(shù)邑贴。

  接著的一行是n個用空格分開的整數(shù) Xi (-100 < Xi < 100), Xi的絕對值,表示螞蟻離開桿子左邊端點的距離叔磷。正值表示頭朝右拢驾,負值表示頭朝左,數(shù)據(jù)中不會出現(xiàn)0值改基,也不會出現(xiàn)兩只螞蟻占用同一位置繁疤。其中,第一個數(shù)據(jù)代表的螞蟻感冒了秕狰。
輸出格式
  要求輸出1個整數(shù)稠腊,表示最后感冒螞蟻的數(shù)目。
樣例輸入
3
5 -2 8
樣例輸出
1
樣例輸入
5
-10 8 -20 12 25
樣例輸出
3

剛接觸題目時有點沒有思路鸣哀,因為會想的太多架忌,在思考每一個螞蟻的行動狀態(tài)甚至每個時候的螞蟻狀態(tài)是一件勞而無功的事情,以至于走了彎路诺舔。知道查看了題解鳖昌,才意識到了解題的要路。
要清楚的幾點是:
1低飒,每個螞蟻的速度是相同的许昨,一個螞蟻如果和感冒螞蟻在同一方向上前進,除了螞蟻回頭褥赊,是不會相遇的糕档。
2,螞蟻的轉(zhuǎn)頭可以看做是兩個螞蟻一個向左一個向右拌喉,碰見后反轉(zhuǎn)速那,一個向右一個向左,而題目所求的是感冒的螞蟻數(shù)目尿背,所以感染的螞蟻個體對結(jié)果并不會產(chǎn)生影響端仰。
3,在感冒的螞蟻傳染給正常螞蟻并反轉(zhuǎn)后田藐,正常螞蟻代替原螞蟻繼續(xù)向原來的方向傳染荔烧,在相反的方向,也開始傳染感冒汽久。

總結(jié):
如果原來的螞蟻行動方向是向左鹤竭,
那么該螞蟻左方的向右行動的螞蟻會被傳染。
該螞蟻右方的向左行動的螞蟻:
如果原來的螞蟻向后反轉(zhuǎn)景醇,那么將會被傳染臀稚。(這時左方有向右行動的螞蟻已經(jīng)被傳染)
如果左方?jīng)]有向右行動的螞蟻,那么該螞蟻不會反轉(zhuǎn)三痰,不會被傳染吧寺。
其余方向行走的螞蟻則不會被傳染窜管。
如果原始方向是向右,同理推斷稚机。

解題代碼為:

#include<iostream>
#include<cmath>  
using namespace std; 

#define MAX 50

int ant[MAX]; 

int main()
{
    int i;
    int n; cin>>n; 
    int left=0,right=0;  
    for (i=0;i<n;i++){ 
        cin>>ant[i];  
    } 
    int h=abs(ant[0]); 
    for ( i=1;i<n;i++) 
    { 
        if (ant[i]>0&&abs(ant[i])<h)//方向向右微峰,即向右行走&&距離左端小于原螞蟻,即在其左側(cè)
            left++; 
        else if (ant[i]<0&&abs(ant[i])>h) //方向向左抒钱,即向左行走&&距離左端大于原螞蟻,即在其右側(cè)
            right++; 
    } 

    if ((left==0&&ant[0]>0)||(right==0&&ant[0]<0))   //向左行走時左側(cè)沒有向右行走的||向右行走時右側(cè)沒有向左行走的
        cout<<1<<endl; 
    else cout<<left+right+1<<endl;  //有傳染過別的螞蟻颜凯,存在反轉(zhuǎn)谋币,反方向螞蟻會被傳染。

    return 0; 
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末症概,一起剝皮案震驚了整個濱河市蕾额,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌彼城,老刑警劉巖诅蝶,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異募壕,居然都是意外死亡调炬,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門舱馅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缰泡,“玉大人,你說我怎么就攤上這事代嗤〖” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵干毅,是天一觀的道長宜猜。 經(jīng)常有香客問我,道長硝逢,這世上最難降的妖魔是什么姨拥? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮趴捅,結(jié)果婚禮上垫毙,老公的妹妹穿的比我還像新娘。我一直安慰自己拱绑,他們只是感情好综芥,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著猎拨,像睡著了一般膀藐。 火紅的嫁衣襯著肌膚如雪屠阻。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天额各,我揣著相機與錄音国觉,去河邊找鬼。 笑死虾啦,一個胖子當(dāng)著我的面吹牛麻诀,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播傲醉,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蝇闭,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了硬毕?” 一聲冷哼從身側(cè)響起呻引,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吐咳,沒想到半個月后逻悠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡韭脊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年童谒,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片沪羔。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡惠啄,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出任内,到底是詐尸還是另有隱情撵渡,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布死嗦,位于F島的核電站趋距,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏越除。R本人自食惡果不足惜节腐,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望摘盆。 院中可真熱鬧翼雀,春花似錦、人聲如沸孩擂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至狈邑,卻和暖如春城须,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背米苹。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工糕伐, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蘸嘶。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓良瞧,卻偏偏與公主長得像,于是被迫代替她去往敵國和親训唱。 傳聞我的和親對象是個殘疾皇子莺褒,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 太空看樹不是夢。 距離地球770公里的太陽同步軌道上的WorldView-2衛(wèi)星你辣,和距離地球631公里的太陽同步回...
    紅拂夜奔去閱讀 2,406評論 1 8
  • 一 讀這套書還有一個漫長而又莫名其妙的過去巡通。在初中的時候,我就已經(jīng)開始讀這套書最初的版本舍哄。但是不知道為什么宴凉,竟然已...
    丁若柯閱讀 20,339評論 6 11
  • 這么多年,我的生命中似乎只有學(xué)習(xí)表悬。初中高中我是學(xué)癡吧弥锄,天天除了學(xué)習(xí)學(xué)習(xí)也不知道做什么。結(jié)果是很抑郁的蟆沫。高中不開心籽暇,...
    蘇醒7閱讀 110評論 2 2
  • 已是卯時時分,夕陽欲墜未墜饭庞,將西山染得一片血紅戒悠。 青石板鋪就的古街狹窄,斜長舟山。江南商道繁盛绸狐,臨江街道兩旁是密密匝匝...
    王動02閱讀 197評論 0 0
  • 穿著藍色的工作服走出涂上孤獨的門。一個白發(fā)司機載著風(fēng)塵仆仆的長途哈欠來到這里累盗,在方向中斷禁止停留的早晨寒矿,他打...
    文森林木閱讀 179評論 0 1