Cannot solve complex problems
haseeb-heaven opened this issue · comments
It cannot solve complex problems of Algo and Graphs.
Example.
Input : Implementing the Knapsack algorithm to solve the 0/1 Knapsack problem: Description: Write a program to implement the Knapsack algorithm to solve the 0/1 Knapsack problem. Input: int values[] = {60, 100, 120}; int weights[] = {10, 20, 30}; int W = 50; Write program in C++ 17 and without explanations.
Output :
int main() {
int values[] = {60, 100, 120};
int weights[] = {10, 20, 30};
int W = 50;
int n = sizeof(values) / sizeof(values[0]);
int m = sizeof(weights) / sizeof(weights[0]);
int max_value = values[0];
int max_weight = weights[0];
int max_weight_value = 0;
int max_value_weight = 0;
int sum = 0;
int result = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
sum = sum + values[i] * weights[j];
if (sum > max_value) {
max_value = values[i];
}
if (sum > max_weight) {
max_weight = weights[j];
}
if (sum > max_weight_value) {
max_weight_value = sum;
}
if (sum > max_value_weight) {
max_value_weight = sum;
}
}
}
if (max_value_weight > W) {
result = max_value_weight;
} else {
result = max_value;
}
cout << result << endl;
return 0;
}
Output : 16800
Expected Output : 220
It cannot solve complex problems of Algo and Graphs.
Example. Input : Implementing the Knapsack algorithm to solve the 0/1 Knapsack problem: Description: Write a program to implement the Knapsack algorithm to solve the 0/1 Knapsack problem. Input: int values[] = {60, 100, 120}; int weights[] = {10, 20, 30}; int W = 50; Write program in C++ 17 and without explanations.
Output :
int main() { int values[] = {60, 100, 120}; int weights[] = {10, 20, 30}; int W = 50; int n = sizeof(values) / sizeof(values[0]); int m = sizeof(weights) / sizeof(weights[0]); int max_value = values[0]; int max_weight = weights[0]; int max_weight_value = 0; int max_value_weight = 0; int sum = 0; int result = 0; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { sum = sum + values[i] * weights[j]; if (sum > max_value) { max_value = values[i]; } if (sum > max_weight) { max_weight = weights[j]; } if (sum > max_weight_value) { max_weight_value = sum; } if (sum > max_value_weight) { max_value_weight = sum; } } } if (max_value_weight > W) { result = max_value_weight; } else { result = max_value; } cout << result << endl; return 0; }Output : 16800 Expected Output : 220
how about using Python instead of C++?