The following pseudocode gives one approach to creating this sequence:
N = length of sequence to be simulated
bkgd[r] = frequency of background sites with r read starts (r = 0, 1, 2, 3).
for each i = 1...N
    x = random number between 0 and 1 (uniform distribution)
    if x < bkgd[0]
        sim_seq[i] = 0
    else if x < bkgd[0] + bkgd[1]
        sim_seq[i] = 1
    else if x < bkgd[0] + bkgd[1] + bkgd[2] 
        sim_seq[i] = 2
    else 
        sim_seq[i] = 3
        If there is a 0 in the denominator of your ratio (for cases where there were no D-segments for s), print -1.