33,321
社区成员




int M;
int N;
// read M, N and check for validity
int q = M/N;
int r = M%N;
std::vector<int> res;
if (r <= N/2)
{
res.assign(q, N);
if (r != 0)
{
for (int i = 0; i < r; i++)
{
res[i * (N/r)] ++;
}
}
}
else
{
res.assign(q+1, N);
r = N - r;
for (int i = 0; i < r; i++)
{
res[i * (N/r)] --;
}
}
没跑过
void split(unsigned int m,unsigned int n,unsigned int* out_array/*此数组用于输出*/)
{
*out_array=m/n;
if(n>1)
split(m-*out_array,n-1,out_array+1);
}