公式
B - 果樹園の収穫区間 / Harvest Interval in the Orchard 解説
by
B - 果樹園の収穫区間 / Harvest Interval in the Orchard 解説
by
kyopro_friends
問題は「 出荷基準を満たす木は最大で何連続しているか?」という意味です。
木 \(1,2,\dots\) の順に出荷基準を満たしているかどうかを確認しながら「今の連続数」「これまでの最大連続数」を更新すればよいです。
実装例 (C++)
#include<bits/stdc++.h>
using namespace std;
int main(){
int n, l, r;
cin >> n >> l >> r;
vector<int>t(n);
for(int i=0; i<n; i++) cin >> t[i];
int ans = 0, crr = 0;
for(int i=0; i<n; i++){
if(l <= t[i] && t[i] <= r){
crr++;
}else{
crr = 0;
}
ans = max(ans, crr);
}
cout << ans << endl;
}
実装例 (Python)
N, L, R = map(int, input().split())
T = list(map(int, input().split()))
ans = 0
crr = 0
for t in T:
if L <= t <= R:
crr += 1
else:
crr = 0
ans = max(ans, crr)
print(ans)
投稿日時:
最終更新:
