#include using namespace std; using ll = long long; #define rep(i, a, b) for(ll i = (ll)a; i < (ll)b; i++) #define irep(i, v) for(auto i = (v).begin(); i != (v).end(); i++) #define ALL(v) (v).begin(), (v).end() #define SZ(v) (ll)(v).size() const ll INF = 1e18; const ll MOD = 1e9 + 7; #include #include namespace mp = boost::multiprecision; // 任意長整数型 using Bint = mp::cpp_int; int main(){ cin.tie(0); ios::sync_with_stdio(false); srand((unsigned)time(NULL)); cout << fixed << setprecision(20); Bint n, x, y; cin >> n >> x >> y; Bint dis = x * x + y * y; Bint sum = 0; Bint mini = INF; rep(i, 0, n){ Bint a; mini = min(a, mini); cin >> a; sum += 2 * a; } sum -= mini; if(dis > sum * sum) cout << "No" << endl; else cout << "Yes" << endl; return 0; }