第五屆藍橋杯 c c B組8

2022-08-01 09:27:12 字數 1379 閱讀 7128

題目描述:

長100厘公尺的細長直桿子上有n只螞蟻。它們的頭有的朝左,有的朝右。

每只螞蟻都只能沿著桿子向前爬,速度是1厘公尺/秒。

當兩隻螞蟻碰面時,它們會同時掉頭往相反的方向爬行。

這些螞蟻中,有1只螞蟻感冒了。並且在和其它螞蟻碰面時,會把感冒傳染給碰到的螞蟻。

請你計算,當所有螞蟻都爬離桿子時,有多少只螞蟻患上了感冒。

【資料格式】

第一行輸入乙個整數n (1 < n < 50), 表示螞蟻的總數。

接著的一行是n個用空格分開的整數 xi (-100 < xi < 100), xi的絕對值,表示螞蟻離開桿子左邊端點的距離。正值表示頭朝右,負值表示頭朝左,資料中不會出現0值,也不會出現兩隻螞蟻占用同一位置。其中,n第乙個資料代表的螞蟻感冒了。

要求輸出1個整數,表示最後感冒螞蟻的數目。

例如,輸入:

35 -2 8

程式應輸出:

1再例如,輸入:

5-10 8 -20 12 25

程式應輸出:

3資源約定:

峰值記憶體消耗 < 256m

cpu消耗  < 1000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。

所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。

注意: main函式需要返回0

注意: 只使用ansi c/ansi c++ 標準,不要呼叫依賴於編譯環境或作業系統的特殊函式。

注意: 所有依賴的函式必須明確地在原始檔中 #include , 不能通過工程設定而省略常用標頭檔案。

提交時,注意選擇所期望的編譯器型別。

/*author::若塵

*/#include

#include

#include

#include

#include

using namespace std;

struct nodearr[1000];

bool cmp(node a, node b)

int main()

sort(arr, arr+n, cmp);

int t, r = 0, l=0;

for (int i = 0; i < n; i++)

if (arr[i].x == 1)

l++;

}for (int i = t+1; i < n; i++)

int ans;

if ( (arr[t].x == 1 && r == 0) || (arr[t].x == -1 && l == 0))

ans = 1;

else

ans = l+r+1;

printf("%d\n", ans); }}

第五屆藍橋杯 c c B組6

題目描述 上小學的時候,小明經常自己發明新演算法。一次,老師出的題目是 1 4 乘以 8 5 小明居然把分子拼接在一起,分母拼接在一起,答案是 18 45 參見圖1.png 老師剛想批評他,轉念一想,這個答案湊巧也對啊,真是見鬼!對於分子 分母都是 1 9 中的一位數的情況,還有哪些算式可以這樣計算...

第五屆藍橋杯 c c B組4

史豐收速演算法的革命性貢獻是 從高位算起,進製。不需要九九表,徹底顛覆了傳統手算 速算的核心基礎是 1位數乘以多位數的乘法。其中,乘以7是最複雜的,就以它為例。因為,1 7 是個迴圈小數 0.142857.如果多位數超過 142857.就要進1 同理,2 7,3 7,6 7 也都是類似的迴圈小數,多...

第五屆藍橋杯c c B組3

題目三 李白打酒 話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家裡出來,酒壺中有酒2鬥。他邊走邊唱 無事街上走,提壺去打酒。逢店加一倍,遇花喝一斗。這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。請你計算李白遇到店和花的次序,可以把遇店記為a,遇...