Yuulis.log

トンネルを抜けるとそこは参照エラーであった。

【AtCoder】ABC 353 A - Buildings | 茶コーダーが解くAtCoder

atcoder.jp

実行時間制限: 2 sec / メモリ制限: 1024 MB / Difficulty: 12

問題概要

 N 個のビルが横一列に並んでおり、左から  i 番目のビルの高さは  H_i である。左から1番目のビルより高いビルが存在するか判定し、存在する場合はその中で最も左のビルは左から何番目か出力せよ。逆に存在しない場合は-1を出力せよ。

制約

  • 入力はすべて整数。
  •  1 \leq N, H_i \leq 100

考察

配列に  H_i を格納し、ループで  H_0 < H_j となる  j があるかを判定してやればよい。0-indexed の場合は最後に +1 するのを忘れないこと。

コード

#include <bits/stdc++.h>
using namespace std;

// ======================================== //

int main()
{
    int N;
    cin >> N;
    vector<int> H(N);
    rep(i, 0, N) cin >> H[i];

    rep(i, 0, N) if (H[0] < H[i])
    {
        cout << i + 1 << endl;
        return 0;
    }

    cout << -1 << endl;
}

atcoder.jp

実装時間: 5分以内