算法
文章平均质量分 59
闲的没事干搞点简单算法恰恰把~
啊呀咦哟嘿
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
多重背包问题(含暴力、二进制优化和单调队列优化)
题目想法1:暴力解决直接设k表示第i件物品有多少。#include<iostream>using namespace std;const int MAX=1005;int w[MAX];int v[MAX];int s[MAX];int f[MAX][MAX];int max(int a,int b){ if(a>b) return a; else return b; }int main(){ int N,V,j; cin>>N>>原创 2021-09-24 20:20:47 · 277 阅读 · 0 评论 -
完全背包问题
题目想法1采用三层循环,尝试第i种装k个的情况,只要第i中装k个的体积<j就比较采用前i个装j容量和采用前i-1个装j-k*v[i]容量价值+k*w[i]价值之和哪个比较大#include<iostream>using namespace std;const int MAX=1005;int w[MAX];int v[MAX]; int f[MAX][MAX];int max(int a,int b){ if(a>b) return a; else return b原创 2021-09-23 20:03:48 · 178 阅读 · 0 评论 -
01背包(含二维数组变为一维数组)
01背包有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N 行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 件物品的体积和价值。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤10000<vi,wi≤1000输入样例4 51原创 2021-09-23 19:19:48 · 251 阅读 · 0 评论
分享