JSFiddle - React, Tailwind, and code Playground

JavaScript

B=n=>(a=>{for(;n>0&a<9;)if((b=~~B[++a]+n)<16)for(B[a]=b;n--;)c[n]='ABCDEFGHIJ'[a]+b--})(c=[-1])||c

log = function(x){ $('body').append('<div>' + x + '</div>'); };

log(B(-1));
log(B(4));
log(B(6));
log(B(10));
log(B(16));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(15));
log(B(2));
log(B(5));
log(B(3));
log(B(1));