#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int total = 150000;
int num_parts = 300;
int parts[num_parts];
int i, current_total, diff;
srand(time(0));
for (i = 0; i < num_parts; i++) {
parts[i] = rand() % 300 + 200;
}
current_total = 0;
for (i = 0; i < num_parts; i++) {
current_total += parts[i];
}
diff = total - current_total;
while (diff != 0) {
int idx = rand() % num_parts;
if (diff < 0 && parts[idx] > 200) {
parts[idx]--;
diff++;
} else if (diff > 0 && parts[idx] < 499) {
parts[idx]++;
diff--;
}
}
printf("每份的值为:\n");
for (i = 0; i < num_parts; i++) {
printf("%d ", parts[i]);
}
printf("\n总和: %d\n", total);
return 0;
}