#include <stdio.h>
#define n 3
int a[n];
int minPrice = 1000000;
int price;
int priceArray[3][3] = {10, 2, 3, 2, 3, 4, 3, 4, 5};
int ok(int t) {
for (int i = 0; i < t; i++) {
if (a[i] == a[t])
return 0;
}
return 1;
}
void traceback(int t) {
if (t == n) {
printf("%d\n", price);
if (price < minPrice) {
minPrice = price;
}
return;
}
for (int i = 0; i < n; i++) {
a[t] = i;
price += priceArray[t][i];
if (ok(t) == 1 && price < minPrice) {
traceback(t+1);
}
price -= priceArray[t][i];
}
}
int main() {
traceback(0);
printf("%d", minPrice);
return 0;
}
工作分配问题
最新推荐文章于 2024-04-13 16:37:27 发布