第一题:
int aNum[m];//为输入的数组;
int ans[n];//为输出数组;
ans[0]=aNum[0];
int num=0,aIndex=0,ansIndex=0;
while(num<n){
for(int i=0;i<ans[ansIndex];i++){
ans[num]=aNum[aIndex];
num++;
}
ansIndex++;
aIndex++;
if(aIndex==m)
aIndex=0;
}
第二题:
我是比较笨的方法a的
放入全部6;
放入全部5:
剩余空间放入1
放入4:
剩余空间放入2:若2放完,放入1
放入3:
看3的个数对4的余数:余数大于0:放入2和1:若2放完,再剩余空间放入1
放入2:若有剩余空间,放入1
放入1.