1060 愛丁頓數 (25 分)邏輯題。英國天文學家愛丁頓很喜歡騎車。據說他為了炫耀自己的騎車功力,還定義了乙個「愛丁頓數」 e ,即滿足有 e 天騎車超過 e 英里的最大整數 e。據說愛丁頓自己的 e 等於87。
現給定某人 n 天的騎車距離,請你算出對應的愛丁頓數 e(≤n)。
輸入第一行給出乙個正整數 n (≤105),即連續騎車的天數;第二行給出 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 即連續騎車的天數 第二行給出...