#include using namespace std; using ll = long long; using uint = unsigned int; #define rep(i,n) for(int i=0;i=0;i--) #define per1(i,n) for(int i=int(n);i>0;i--) #define all(c) c.begin(),c.end() #define si(x) int(x.size()) #define pb emplace_back #define fs first #define sc second template using V = vector; template using VV = vector>; template void chmax(T& x, U y){if(x void chmin(T& x, U y){if(y void mkuni(V& v){sort(all(v));v.erase(unique(all(v)),v.end());} template ostream& operator<<(ostream& o,const pair &p){ return o<<"("< ostream& operator<<(ostream& o,const vector &vc){ o<<"{"; for(const T& v:vc) o<> N >> X >> Y >> Z; while(N--){ ll v; cin >> v; v = v/1000+1; if(X+Y*5+Z*10 < v){ cout << "No" << endl; return 0; } { ll use = min(v/10,Z); if(X+Y*5+use*10 < v){ use++; } Z -= use; v -= use*10; } if(v>0){ ll use = min(v/5,Y); if(X+use*5 < v){ use++; } Y -= use; v -= use*5; } if(v>0){ X -= v; } } cout << "Yes" << endl; }