#include using namespace std; int main() { int N; cin >> N; priority_queue, greater > que1; priority_queue que2; for (int i = 0; i < N; i++) { int A; cin >> A; if (A > 0) { que1.push(A); } if (A < 0) { que2.push(A); } } long long now = 0; while (!que1.empty() || !que2.empty()) { if (now <= 0) { if (!que1.empty()) { now += que1.top(); que1.pop(); } else { cout << "No"; return 0; } } else { if (!que2.empty()) { now += que2.top(); que2.pop(); } else { cout << "No"; return 0; } } } cout << "Yes"; }