Poj 1852——Ants

來源:互聯網
上載者:User

來源:點擊開啟連結

簡介:很多的螞蟻都在長度為L(cm)的膀子上爬行,它們的速度都是1cm/s,到了棒子終端的時候,螞蟻就會掉下去。如果在爬行途中遇到其他螞蟻,兩隻螞蟻的方向都會逆轉。已知螞蟻在棒子的最初位置座標,但是我們不知道他們會往哪一個方向爬。請求出所有螞蟻掉下去的最短時間和最長時間。由題意可知,螞蟻數的上限為2^1000000,所以直接枚舉肯定不行。

其實換一個角度就可以想出來,螞蟻的個體是相同的,所以相遇和沒相遇一個水平,所以要麼從一頭掉下,只要找出所有螞蟻與較遠端比較,然後找出最大值就是所需要的最大時間在距離短的一邊中求出最大的一邊。就能找到距離端點最遠的螞蟻需要爬到端點的時間。

代碼十分簡單:

#include <iostream>#include <cstring>#include <cstdio>using namespace std;int main(){int testcase;cin>>testcase;while(testcase--){int maxres=0,minres=0;int L,totalants,tmp;cin>>L>>totalants;for(int i=0;i<totalants;i++){scanf("%d",&tmp);if(tmp>maxres)maxres=tmp;if(L-tmp>maxres)maxres=L-tmp;if(L-tmp<tmp)tmp=L-tmp;if(tmp>minres)minres=tmp;}cout<<minres<<" "<<maxres<<endl;}return 0; }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.