Кошелёк

Заметим, что для того, что бы положить купюру типа bj, то надо либо переложить все купюры типа меньшего, чем bj в стопку sl, либо переложить все купюры типа большего, чем bj в стопку sr. Значит минимальное количество действий, которое надо для этого сделать — минимум из количества купюр, типа меньшего чем bj, и количества купюр, типа большего чем bj.

Заведем дерево отрезков на сумму, которое будет считать сумму количеств имеющихся купюр каждого типа. Тогда для ответа на запрос, нужно посчитать сумму первых bj - 1 элементов, и сумму последних n - bj элементов, и взять из них минимум.