recursive function gcd(a,b) result(c) integer::a,b,c if(b.eq.0) then c = a else c = gcd(b,MOD(a,b)) end if end function gcd program main interface recursive function gcd(a,b) result(c) integer::a,b,c end function gcd end interface integer::N,i,gcdvalue integer,allocatable::A(:) read *,N allocate(A(N)) read *,A gcdvalue = A(1) do i=2,N if(gcdvalue>A(i)) then gcdvalue = gcd(gcdvalue, A(i)) else gcdvalue = gcd(A(i),gcdvalue) end if end do print '(i0)',100/gcdvalue end program main