#include <iostream>
#include <iterator>
#include <algorithm>
using namespace std;
int ma(float array[], int N)
{
int k = 0;
float max = array[k];
for (int i = 0; i < N; ++i) {
if (array[i] > max) {
max = array[i];
k = i;
}
}
return k;
}
int main()
{
int t;
while (t--) {
int n;
cin >> n;
int w[n], p[n];
for (int i = 0; i < n; i++)
cin >> w[i];
for (int i = 0; i < n; i++)
cin >> p[i];
float x[n];
for (int i = 0; i < n; i++)
x[i] = p[i]/w[i];
int weigth = 0, profit = 0;
while (weigth <= 20) {
// int k=distance(x, max_element(x, x + n));
// int k= std::distance(x, max_element(x, x + sizeof(x)/sizeof(x)));
int k = ma(x, n);
weigth = weigth + w[k];
profit = profit + p[k];
x[k] = p[k] = w[k] = 0;
}
cout << weigth << endl
<< profit << endl;
}
}
Der obige Code druckt nichts. Wenn Sie wollen, dass die Frage nach "catch-the-match" verweisen:Unten Code druckt nichts
'int t; while (t -) '- Du hast vergessen,' t' zu initialisieren –
"Wenn du die Frage haben willst ..." .. was? Wenn du eine Antwort willst, solltest du eine Frage in der Frage stellen und nicht hinter einem Link versteckt sein, der mich irgendwo anmeldet – user463035818
willst du wahrscheinlich 'int t = N' wo N ist irgendein Wert ungleich null (zB 10), solltest du entscheiden was der Wert ist, wie ich die Frage ohne Anmeldung nicht sehen kann – niceman