#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int LL; typedef pair P; typedef pair LP; const int INF=1<<30; const LL MAX=1e9+7; void array_show(int *array,int array_n,char middle=' '){ for(int i=0;i &vec_s,int vec_n=-1,char middle=' '){ if(vec_n==-1)vec_n=vec_s.size(); for(int i=0;i &vec_s,int vec_n=-1,char middle=' '){ if(vec_n==-1)vec_n=vec_s.size(); for(int i=0;i q1; int main(){ int n,m; int i,j,k; int a,b,c; int x,y,z; cin>>n>>x>>y>>z; for(i=0;i>a; b=min(z,a/10000); a-=b*10000,z-=b; b=min(y,a/5000); a-=b*10000,y-=b; b=min(x,a/1000); a-=b*1000,x-=b; q1.push(a); } while(!q1.empty()){ a=q1.top(),q1.pop(); if(z){ a-=10000,z--; if(a<0)continue; q1.push(a); }else if(y){ a-=5000,y--; if(a<0)continue; q1.push(a); }else if(x){ a-=1000,x--; if(a<0)continue; q1.push(a); }else{ q1.push(a); break; } } if(q1.empty())cout<<"Yes"<