#41057: 偷吃步解法


wusimon555 (unknown)

學校 : 不指定學校
編號 : 126121
來源 : [219.71.81.20]
最後登入時間 :
2024-10-21 04:59:28
o076. 1. 特技表演 -- 2024年6月APCS | From: [118.232.66.221] | 發表日期 : 2024-06-29 10:03

因為答案只要算最大值,所以設一個起始值都為零的b[n]陣列,然後把得到連續飛行值一直輸入陣列就好,

最後再排序一下陣列取陣列的最大值即可,然後就神奇地過了

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin>>n;
    int a[n];
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    int b[n]={0};//設一個儲存飛行棟數值的陣列
    int k=1;//飛行越過棟數,起始值為1
    for(int i=0;i<n-1;i++){
        if(a[i]-a[i+1]>0){
            k++;
            b[i]=k;
        }
        else{
            k=1;
        }
    }
    sort(b,b+n);
    cout << b[n-1] << endl;
    return 0;
}

 
ZeroJudge Forum