小编ngl*_*htr的帖子

为什么我用这个背包问题求解器得到"未知信号11"?

任务

给定n个金条,找到适合容量W的金的最大重量

输入

第一行包含背包的容量W和金条的数量n.下一行包含n个整数

产量

适合容量为W的背包的最大黄金重量.

约束

1 <= W <= 10000; 1 <= n <= 300; 0 <= w0,w1,w2,...,w(n-1)<= 100000

#include <iostream>
#include <vector>
using std::vector;

int optimal_weight(int W, vector<int> w) {
  int n = w.size() + 1;
  int wt = W + 1;
  int array [n][wt];
  int val = 0;

  for(int i = 0; i < wt; i++) array [0][i] = 0;
  for(int i = 0; i < n; i++) array …
Run Code Online (Sandbox Code Playgroud)

c++ arrays algorithm dynamic-programming multidimensional-array

3
推荐指数
1
解决办法
905
查看次数

如何在c ++中处理-nan输出

假设我有一个函数来计算一对点之间的欧几里德距离.point并且point_pair是两个结构定义为:

struct point {
    int x, y;
}
Run Code Online (Sandbox Code Playgroud)

struct point_pair {
    point a, b;
}
Run Code Online (Sandbox Code Playgroud)

以下函数计算将一对点作为输入的距离:

double calc_distance(point_pair pair)
{
  return (sqrt((pair.a.x - pair.b.x) * (pair.a.x - pair.b.x) + (pair.a.y - pair.b.y) * (pair.a.y - pair.b.y)));
}
Run Code Online (Sandbox Code Playgroud)

该函数适用于小点对值; 但对于点对,例如:

651760491 595516649
716636914 955747792
Run Code Online (Sandbox Code Playgroud)

输出是 -nan

我不知道如何解决这个问题,还有什么我应该用来代替双重的吗?

以下是整个代码:https://pastebin.com/5XEr9bTD

c++ c++11

1
推荐指数
1
解决办法
84
查看次数