#include #define fri(i,n) for(int i=0;i istream&operator>>(istream &inp, vector &vec){ fri(i,vec.size()) inp>>vec[i]; return inp; } template ostream&operator<<(ostream &oup, vector vec){ forc(vec) oup<>p>>d>>m>>s; int i = 0, lst = p; for(i=0;;i++){ if(!i){ if(s >= p) s-=p; else {i = 0; break;} lst -= d; continue; } if(lst > m){ if(s-lst < 0) break; s -= lst; lst -= d; } else{ if(s-m < 0) break; s -= m; } } cout<