Official

A - 連続晴天の最長記録 / Longest Streak of Hot Days Editorial by MMNMM


初心者の方へ

for 文で気温を順に見ながら、「現在暑い日が何日連続しているか」を管理することなどでこの問題を解くことができます。

実装例は以下のようになります。

#include <iostream>
using namespace std;

int main() {
    int N, K;
    cin >> N >> K;

    int ans = 0; // 答え
    int now = 0; // 現在暑い日が何日連続しているか
    for (int i = 0; i < N; ++i) {
        int A;
        cin >> A;
        if (A < K) { // 暑い日でなければ
            now = 0; // 連続日数を 0 に
        } else { // 暑い日なら
            ++now; // 連続日数を増やす
        }
        ans = max(ans, now); // 答えを更新
    }
    cout << ans << endl;
    return 0;
}
N, K = map(int, input().split())

ans = 0 # 答え
now = 0 # 現在暑い日が何日連続しているか

for A in map(int, input().split()):
    if A < K: # 暑い日でなければ
        now = 0 # 連続日数を 0 に
    else: # 暑い日なら
        now += 1 # 連続日数を増やす
    ans = max(ans, now) # 答えを更新

print(ans)

posted:
last update: