is_divisible() is true.
Partitions range into two subranges. The newly constructed blocked_range is approximately the second half of the original range, and range is updated to be the remainder. Each subrange has the same grainsize as the original range.
Let i and j be integers that define a half-open interval [ i, j) and let g specifiy a grain size. The statement blocked_range<int> r(i,j,g) constructs a blocked_range<int> that represents [ i, j) with grain size g. Running the statement blocked_range<int> s(r,split); subsequently causes r to represent [ i, i +( j - i)/2) and s to represent [ i +( j - i)/2, j), both with grain size g.