weixin_37986285
littlesection
2017-08-15 04:22
采纳率: 100%
浏览 2.3k

使用Qt运行C++程序的问题

用Qt写01背包问题时发现运行结果怎么都不对,可是debug结果是对的,就找了个在线编译器发现结果是正确的,想知道什么原因
具体代码和图片请大家移步
http://bbs.csdn.net/topics/392216005
感谢

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • justin_bkdrong
    枫舞的季节 2017-08-15 07:35
    已采纳

    程序写的有问题, C++不支持动态数组,而且边界问题比较严重。编译都不能通过,更不能运行。

     int f[n + 1][W + 1] ;
     n 和 W都是传入的参数,语法都不对。
    
      for(int idx = 1; idx <= n; idx++){
           f[idx][0] = 0;
           for(int j = 1; j <= W; j++){
               f[idx][j] = f[idx - 1][j];
               if(j >= w[idx])   //  这里超出了边界
                   f[idx][j] = max(f[idx - 1][j - w[idx-1]] + v[idx-1], f[idx-1][j]);
           }
       }
    
    
    

    自己再仔细看看.

    点赞 评论

相关推荐