Problem:
Score : 200 points

Problem Statement

There are N mountains ranging from east to west, and an ocean to the west.

At the top of each mountain, there is an inn. You have decided to choose where to stay from these inns.

The height of the i-th mountain from the west is H_i.

You can certainly see the ocean from the inn at the top of the westmost mountain.

For the inn at the top of the i-th mountain from the west (i = 2, 3, ..., N), you can see the ocean if and only if H_1 \leq H_i, H_2 \leq H_i, ..., and H_{i-1} \leq H_i.

From how many of these N inns can you see the ocean?

Constraints

All values in input are integers.

1 \leq N \leq 20

1 \leq H_i \leq 100

Input

Input is given from Standard Input in the following format:

N
H_1 H_2 ... H_N

Output

Print the number of inns from which you can see the ocean.

Sample Input 1

4
6 5 6 8

Sample Output 1

3

You can see the ocean from the first, third and fourth inns from the west.

Sample Input 2

5
4 5 3 5 4

Sample Output 2

3

Sample Input 3

5
9 5 6 8 4

Sample Output 3

1

Solution in Fortran (gfortran v4.8.4) (judge verdict: Accepted)

module ABC124

  ! <module>s to import
  use, intrinsic :: iso_fortran_env

  ! require all variables to be explicitly declared
  implicit none

  ! accessibility of <subroutine>s and <function>s in this <module>
  public :: task_B

  ! constants for this <module>
  integer(kind=INT8), parameter, private :: num_mountains_max = 100_INT8

  ! variables for this <module>
  integer(kind=INT8) :: num_mountains_all
  integer(kind=INT8) :: num_mountains_visible
  integer(kind=INT8) :: height_mountain(1:num_mountains_max)
  logical            :: is_visible

  ! contained <subroutine>s and <function>s are below
  contains

  subroutine task_B

    ! variables for this <subroutine>
    integer(kind=INT8) :: itr_Mt, itr_ToWest

    ! STEP.01
    ! read out the number of the mountains
    read(unit=INPUT_UNIT, fmt=*) num_mountains_all

    ! STEP.02
    ! read out the heights of the mountains
    read(unit=INPUT_UNIT, fmt=*) height_mountain(1:num_mountains_all)

    ! STEP.03
    ! count up the number of mountains which you can see the sea from the top of the mountain
    num_mountains_visible = 0_INT8

    do itr_Mt = 1_INT8, num_mountains_all, 1_INT8
      
      is_visible = .true.

      do itr_ToWest = itr_Mt-1_INT8, 1_INT8, -1_INT8
        if (height_mountain(itr_ToWest) .gt. height_mountain(itr_Mt)) then
          is_visible = .false.
          exit
        end if
      end do

      if (is_visible) num_mountains_visible = num_mountains_visible + 1_INT8

    end do

    ! STEP.04
    ! output the result
    write(unit=OUTPUT_UNIT, fmt='(I0)', advance='yes') num_mountains_visible

    ! STEP.END
    return

  end subroutine task_B

end module ABC124

program main

  ! <module>s to import
  use, non_intrinsic :: ABC124

  ! require all variables to be explicitly declared
  implicit none

  call task_B

end program main