PAT B1060 愛丁頓數 (25 分

2021-09-18 06:58:54 字數 855 閱讀 8676

1060 愛丁頓數 (25 分)

英國天文學家愛丁頓很喜歡騎車。據說他為了炫耀自己的騎車功力,還定義了乙個「愛丁頓數」 e ,即滿足有 e 天騎車超過 e 英里的最大整數 e。據說愛丁頓自己的 e 等於87。

現給定某人 n 天的騎車距離,請你算出對應的愛丁頓數 e(≤n)。

輸入第一行給出乙個正整數 n (≤10​5​​),即連續騎車的天數;第二行給出 n 個非負整數,代表每天的騎車距離。

在一行中給出 n 天的愛丁頓數。

10

6 7 6 9 3 10 8 2 7 8

6
邏輯題。

從下標1開始儲存在陣列v中,從大到小排序,v[ i ] > i 的個數即為所求。

思路是,要找最大的愛丁頓數e,即e天超過e的數,基本都會想到排序。

若從大到小排序,從 i = 1 開始遍歷陣列 v,如果 v[i] > i,3那麼大於 i 的就有 v[i]個(個數存在cnt中)。別忘了 i 是遞增的,v[i]是遞減的,當v[i] < i時,停止遍歷,輸出結果。

排序有個小坑,注意是從1 到 最後 排序,不是從 0 到 最後.

#include #include #include using namespace std;

bool cmp(int a, int b)

int main()

printf("%d", cnt);

return 0;

}

PAT B 1060 愛丁頓數 25

英國天文學家愛丁頓很喜歡騎車。據說他為了炫耀自己的騎車功力,還定義了乙個 愛丁頓數 e,即滿足有e天騎車超過e英里的最大整數e。據說愛丁頓自己的e等於87。現給定某人n天的騎車距離,請你算出對應的愛丁頓數e n 輸入格式 輸入第一行給出乙個正整數n 105 即連續騎車的天數 第二行給出n個非負整數,...

PAT B1060 愛丁頓數

英國天文學家愛丁頓很喜歡騎車。據說他為了炫耀自己的騎車功力,還定義了乙個 愛丁頓數 e,即滿足有e天騎車超過e英里的最大整數e。據說愛丁頓自己的e等於87。現給定某人n天的騎車距離,請你算出對應的愛丁頓數e n 輸入格式 輸入第一行給出乙個正整數n 105 即連續騎車的天數 第二行給出n個非負整數,...

PAT (B)1060 愛丁頓數

英國天文學家愛丁頓很喜歡騎車。據說他為了炫耀自己的騎車功力,還定義了乙個 愛丁頓數 e 即滿足有 e 天騎車超過 e 英里的最大整數 e。據說愛丁頓自己的 e 等於87。現給定某人 n 天的騎車距離,請你算出對應的愛丁頓數 e n 輸入第一行給出乙個正整數 n 10 5 即連續騎車的天數 第二行給出...