N, X, M = gets.split.map(&:to_i) A = gets.split.map(&:to_i) B = A.map { |x| count = 0 while x >= X count += 1 x /= 2 end count } max = 0 sum = 0 (0 ... N).reverse_each do |i| if B[i] > max sum += (i + 1) * (B[i] - max) max = B[i] end end puts (sum <= M ? "Yes" : "No")