Professional Documents
Culture Documents
#include <iostream>
#include <algorithm>
int main() {
int numberTest;
std::cin >> numberTest;
std::sort(a, a + 10);
class Item {
public:
int value;
int weight;
// Knapsack class
class Knapsack {
public:
Knapsack(int capacity) : capacity(capacity) {}
return dp[numItems][capacity];
}
private:
int capacity;
};
int main() {
int numItems, knapsackCapacity;
std::cout << "nhap so luong muc ";
std::cin >> numItems;
std::vector<Item> items;
std::cout << "nhap gia tri va trong luong cua tung mat hang" << std::endl;
for (int i = 0; i < numItems; ++i) {
int value, weight;
std::cin >> value >> weight;
items.push_back(Item(value, weight));
}
Knapsack knapsack(knapsackCapacity);
int maxValue = knapsack.solve(items);
std::cout << "gia tri max co the dat duoc lai " << maxValue << std::endl;
return 0;
}
Code:
#include <iostream>
#include <vector>
class DuLich {
private:
int soLuongThanhPho; // Số lượng thành phố
std::vector<std::vector<int>> khoangCach; // Ma trận chi phí di chuyển giữa các thành phố
public:
DuLich(int soLuong, const std::vector<std::vector<int>>& kc) : soLuongThanhPho(soLuong), khoangCach(kc) {}
// Tìm thành phố gần nhất chưa được ghé thăm từ thành phố hiện tại
for (int j = 0; j < soLuongThanhPho; ++j) {
if (!daGheTham[j] && khoangCach[thanhPhoHienTai][j] < khoangCachNhoNhat) {
khoangCachNhoNhat = khoangCach[thanhPhoHienTai][j];
thanhPhoTiepTheo = j;
}
}
// Thêm thành phố gần nhất vào đường đi và đánh dấu đã ghé thăm
duongDi.push_back(thanhPhoTiepTheo);
daGheTham[thanhPhoTiepTheo] = true;
thanhPhoHienTai = thanhPhoTiepTheo;
}
return duongDi;
}
};
int main() {
// Số lượng thành phố và ma trận chi phí di chuyển giữa các thành phố
int soLuongThanhPho = 4;
std::vector<std::vector<int>> khoangCach = {
{0, 10, 15, 20},
{10, 0, 35, 25},
{15, 35, 0, 30},
{20, 25, 30, 0}
};
return 0;
}