int extra = 3;
Map<Integer, Integer> extraMap = new HashMap<Integer, Integer>();
public void recursiveSend(int fee) {
if (fee <= 0 || extra <= 0) {
return;
} else {
int size = fee / extra; // 由最高位开始获得每位上的个数
extraMap.put(extra, size);
if (fee % extra != 0) { // 如果存在余数,则进行递归调用
fee = fee % extra;
extra--;
recursiveSend(fee);
}
}
}
以上是将一个数分解成1、2、3,例如10等于3个3和1个1,11等于3个3和1个2,12等于4个3…………