当前位置: 首页 > news >正文

背包问题

目录

开端

01背包问题

AcWing 01背包问题

Luogu P2925干草出售

Luogu P1048采药

完全背包问题

AcWing 完全背包问题

Luogu P1853投资的最大效益

多重背包问题

AcWing 多重背包问题 I

AcWing 多重背包问题 II

Luogu P1776宝物筛选

混合背包问题

AcWing 混合背包问题

Luogu P1833樱花

二维费用背包问题

AcWing 二维费用的背包问题 

Luogu P1507NASA的食物计划

分组背包问题

AcWing 分组背包问题

Luogu P1757 通天之分组背包


开端

关于背包问题,嗯一直学不明白,暑假咸的没事又拾起来学了一下,跟着这位大佬整理的思路(背包九讲——全篇详细理解与代码实现-CSDN博客),对背包的思想有了一定清晰的理解,大佬的文章有些长,所以跟着自己的思路再整理一下。

为了方便统一,先定义一下

c[i]:表示代价

w[i]:表示价值

dp[i][j]:表示前i个物品花费代价为j的可以获得的最大代价

p[i]:表示第i种物品最多有p[i]件

01背包问题

定义:

dp[i][j]:表示前i个物品恰放入一个容量为j的背包下可以获得的最大代价

子问题第i1件物品状态:

①不选:dp[i][j]=dp[i-1][j]②选:dp[i][j]=dp[i][j-c[i]]+w[i]

状态转移方程:

dp[i][j]=max(dp[i-1][j],dp[i][j-c[i]]+w[i])

优化空间复杂度:

O(V*N)

for(int i=1;i<=n;i++)for(int j=c[i];j<=V;j--)dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+w[i]);

O(V)

for(int i=1;i<=n;i++)for(int j=V;j>=c[i];j++)dp[j]=max(dp[j],dp[j-c[i]]+w[i]);

关于顺序和逆序:

逆序表示:dp[j]=max(dp[j],dp[j-c[i]]+w[i])由dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+w[i])转移过来的
顺序表示:dp[j]=max(dp[j],dp[j-c[i]]+w[i])由dp[i][j]=max(dp[i][j],dp[i][j-c[i]]+w[i])转移过来的

初始化问题:

①要求恰好装满:dp[i]=-∞,dp[0]=0;②只要求价值最大:dp[i]=0;

 AcWing 01背包问题

const int N = 1010;
int c[N], w[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;for (int i = 1; i <= N; i++)cin >> c[i] >> w[i];for (int i = 1; i <= N; i++)for (int j = V; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);cout << dp[V] << endl;
}

Luogu P2925干草出售

const int N = 5e4 + 10;
int w[N], dp[N];
inline void solve()
{int C, H;cin >> C >> H;for (int i = 1; i <= H; i++)cin >> w[i];for (int i = 1; i <= H; i++)for (int j = C; j >= w[i]; j--)dp[j] = max(dp[j], dp[j - w[i]] + w[i]);cout << dp[C] << endl;
}

Luogu P1048采药

const int N = 1010;
int c[N], w[N], dp[N];
inline void solve()
{int T, M;cin >> T >> M;for (int i = 1; i <= M; i++)cin >> c[i] >> w[i];for (int i = 1; i <= M; i++)for (int j = T; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);cout << dp[T] << endl;
}

完全背包问题

 定义:

dp[i][j]:表示前i种物品恰放入一个容量为j的背包下可以获得的最大代价

子问题第i种物品状态:

①不选该种物品:dp[i][j]=dp[i-1][j];
②选不同件该种物品:选0件、1件、2件……k件:dp[i][j]=dp[i-1][j-c[i]*k]+w[i]*k;

状态转移方程:

dp[i][j]=max(dp[i-1][j-c[i]*k]+w[i]*k)  0<=c[i]*k<=j

优化空间复杂度:

O(N*∑(V/c[i]))

for(int i=1;i<=n;i++)for(int j=c[i];j<=V;j++)for(int k=0;c[i]*k<=j;k++)dp[i][j]=max(dp[i][j],dp[i-1][j-c[i]*k]+w[i]*k);
# 第一个参数,因为k=0时就相当于dp[i-1][j];

O(V*N)转化为01背包问题

for(int i=1;i<=n;i++)for(int j=c[i];j<=j;j++)dp[j]=max(dp[j],dp[j-c[i]]+w[i]);
//等价于dp[i][j]=max(dp[i-1][j],dp[i][j-c[i]]+w[i]);(不取该物品,取不同件);

关于顺序和逆序:

逆序表示:dp[j]=max(dp[j],dp[j-c[i]]+w[i])由dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+w[i])转移过来的
顺序表示:dp[j]=max(dp[j],dp[j-c[i]]+w[i])由dp[i][j]=max(dp[i-1][j],dp[i][j-c[i]]+w[i])转移过来的

初始化问题:

①要求恰好装满:dp[i]=-∞,dp[0]=0;②只要求价值最大:dp[i]=0;

AcWing 完全背包问题

const int N = 1010;
int c[N], w[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;for (int i = 1; i <= N; i++)cin >> c[i] >> w[i];for (int i = 1; i <= N; i++)for (int j = c[i]; j <= V; j++)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);cout << dp[V] << endl;
}

Luogu P1853投资的最大效益

const int N = 1e6 + 10;
int c[N], w[N], dp[N];
inline void solve()
{int s, n, d;cin >> s >> n >> d;for (int i = 1; i <= d; i++)cin >> c[i] >> w[i];while (n--){for (int i = 1; i <= d; i++)for (int j = c[i]; j <= s; j++)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);s += dp[s];}cout << s << endl;
}
int main(

这个题目有个小坑

所以要做一下处理:除以1000防止爆空间

const int N = 1e6 + 10;
int c[N], w[N], dp[N];
inline void solve()
{int s, n, d;cin >> s >> n >> d;for (int i = 1; i <= d; i++)cin >> c[i] >> w[i];while (n--){for (int i = 1; i <= d; i++)for (int j = c[i] / 1000; j <= s / 1000; j++)dp[j] = max(dp[j], dp[j - c[i] / 1000] + w[i]);s += dp[s / 1000];}cout << s << endl;
}

多重背包问题

  定义:

dp[i][j]:表示前i种物品恰放入一个容量为j的背包下可以获得的最大代价

子问题第i种物品状态:

①不选该种物品:dp[i][j]=dp[i-1][j];
②选不同件该种物品:选1件、2件……p[i]件:dp[i][j]=dp[i-1][j-c[i]*k]+w[i]*k;

状态转移方程:

dp[i][j]=max(dp[i-1][j-c[i]*k]+w[i]*k)  0<=k<=p[i]

转化为01背包问题:

方法一:O(V*∑p[i])

for(int i=1;i<=n;i++)for(int j=V;j>=c[i];j--)for(int k=1;c[i]*k<=j&&k<=p[i];k++)dp[j]=max(dp[j],dp[j-c[i]*k]+w[i]*k);
# 第一个参数,因为k=0时就相当于dp[i-1][j];

方法二:二进制优化O(N*log(p)*V)

for (int i = 1; i <= N; i++){int a, b, s;cin >> a >> b >> s;int k = 1;while (k <= s)  //0……2^k-1部分的系数1,2,4,8……{cnt++;c[cnt] = k * a;w[cnt] = k * b;s -= k;k *= 2;}if (s > 0)  //2^k……s部分的系数 s-2^k{cnt++;c[cnt] = s * a;w[cnt] = s * b;}}N = cnt;  //更新总数量for (int i = 1; i <= N; i++)  //01背包问题for (int j = V; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);
 for (int i = 1; i <= n; i++){cin >> c[i] >> w[i] >> p[i];int s = min(p[i], W / w[i]);for (int k = 1; s > 0; k <<= 1){k = min(k, s);s -= k;for (int j = W; j >= k * w[i]; j--){dp[j] = max(dp[j], dp[j - k * w[i]] + k * c[i]);}}}

初始化问题:

①要求恰好装满:dp[i]=-∞,dp[0]=0;②只要求价值最大:dp[i]=0;

方法一:

AcWing 多重背包问题 I

const int N = 110;
int c[N], w[N], p[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;int cnt = 0;for (int i = 1; i <= N; i++)cin >> c[i] >> w[i] >> p[i];for (int i = 1; i <= N; i++)for (int j = V; j >= c[i]; j--)for (int k = 1; c[i] * k <= j && k <= p[i]; k++)dp[j] = max(dp[j], dp[j - c[i] * k] + w[i] * k);cout << dp[V] << endl;
}

方法二:

AcWing 多重背包问题 II

const int N = 20010;  //注意初始化,否则会越界
int c[N], w[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;int cnt = 0;for (int i = 1; i <= N; i++){int a, b, s;cin >> a >> b >> s;int k = 1;while (k <= s)  //0……2^k-1部分的系数1,2,4,8……{cnt++;c[cnt] = k * a;w[cnt] = k * b;s -= k;k *= 2;}if (s > 0)  //2^k……s部分的系数 s-2^k{cnt++;c[cnt] = s * a;w[cnt] = s * b;}}N = cnt;  //更新总数量for (int i = 1; i <= N; i++)  //01背包问题for (int j = V; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);cout << dp[V] << endl;
}

Luogu P1776宝物筛选

const int N = 1e6 + 10; // 注意初始化,否则会越界
int c[N], w[N], dp[N];
inline void solve()
{int n, W;cin >> n >> W;int cnt = 0;for (int i = 1; i <= n; i++){int a, b, s;cin >> a >> b >> s;int k = 1;while (k <= s){cnt++;w[cnt] = k * a;c[cnt] = k * b;s -= k;k *= 2;}if (s > 0){cnt++;w[cnt] = s * a;c[cnt] = s * b;}}n = cnt;for (int i = 1; i <= n; i++)for (int j = W; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);cout << dp[W] << endl;
}

简化

const int N = 1e6 + 10; // 注意初始化,否则会越界
int c[N], w[N], p[N], dp[N];
inline void solve()
{int n, W;cin >> n >> W;for (int i = 1; i <= n; i++){cin >> c[i] >> w[i] >> p[i];int s = min(p[i], W / w[i]);for (int k = 1; s > 0; k <<= 1){k = min(k, s);s -= k;for (int j = W; j >= k * w[i]; j--){dp[j] = max(dp[j], dp[j - k * w[i]] + k * c[i]);}}}cout << dp[W] << endl;
}

混合背包问题

 01背包、完全背包、多重背包的混合状态转移:

for (int i = 1; i <= N; i++){cin >> c[i] >> w[i] >> p[i];// 01背包if (p[i] == -1)for (int j = V; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);// 完全背包else if (p[i] == 0)for (int j = c[i]; j <= V; j++)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);// 多重背包二进制优化else{int s = min(p[i], V / c[i]);for (int k = 1; s > 0; k <<= 1){k = max(k, s);s -= k;for (int j = V; j >= k * c[i]; j--)dp[j] = max(dp[j], dp[j - k * c[i]] + k * w[i]);}}}

AcWing 混合背包问题

const int N = 1e6 + 10; // 注意初始化,否则会越界
int c[N], w[N], p[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;for (int i = 1; i <= N; i++){cin >> c[i] >> w[i] >> p[i];// 01背包if (p[i] == -1)for (int j = V; j >= c[i]; j--)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);// 完全背包else if (p[i] == 0)for (int j = c[i]; j <= V; j++)dp[j] = max(dp[j], dp[j - c[i]] + w[i]);//或将完全背包转化为多重01背包s=V/c[i]// 多重背包二进制优化else{int s = min(p[i], V / c[i]);for (int k = 1; s > 0; k <<= 1){k = min(k, s);s -= k;for (int j = V; j >= k * c[i]; j--)dp[j] = max(dp[j], dp[j - k * c[i]] + k * w[i]);}}}cout << dp[V] << endl;
}

Luogu P1833樱花

const int N = 1e6 + 10; // 注意初始化,否则会越界
int c[N], w[N], p[N], dp[N];
inline void solve()
{int m1, m2, s1, s2, N;scanf("%d:%d %d:%d %d", &m1, &s1, &m2, &s2, &N);int V = m2 * 60 + s2 - m1 * 60 - s1;for (int i = 1; i <= N; i++){cin >> c[i] >> w[i] >> p[i];int s;if (p[i] == 0) // 完全转化为多重s = V / c[i];elses = min(p[i], V / c[i]);for (int k = 1; s > 0; k <<= 1){k = min(k, s);s -= k;for (int j = V; j >= k * c[i]; j--)dp[j] = max(dp[j], dp[j - k * c[i]] + k * w[i]);}}cout << dp[V] << endl;
}

二维费用背包问题

 定义:每件物品需要同时花费两种不同的代价

dp[i][j][k]:表示前i种物品付出两种代价分别最大为j和k时可获得的最大价值

状态转移方程:

dp[i][j][k]=max(dp[i-1][j][k],dp[i-1][j-c[i]][k-m[i]]+w[i])  

01背包代码(完全背包、多重背包可以类比)

for(int i=1;i<=n;i++)for(int j=V;j>=c[i];j--)for(int k=M;k>=m[i];k--)dp[j][k]=max(dp[j][k],dp[j-c[i]][k-m[i]]+w[i]);

AcWing 二维费用的背包问题 

const int N = 1010; // 注意初始化,否则会越界
int c[N], w[N], m[N], dp[N][N];
inline void solve()
{int N, V, M;cin >> N >> V >> M;for (int i = 1; i <= N; i++){cin >> c[i] >> m[i] >> w[i];for (int j = V; j >= c[i]; j--)for (int k = M; k >= m[i]; k--)dp[j][k] = max(dp[j][k], dp[j - c[i]][k - m[i]] + w[i]);}cout << dp[V][M] << endl;
}

Luogu P1507NASA的食物计划

const int N = 1010; // 注意初始化,否则会越界
int c[N], w[N], m[N], dp[N][N];
inline void solve()
{int V, M, N;cin >> V >> M >> N;for (int i = 1; i <= N; i++){cin >> c[i] >> m[i] >> w[i];for (int j = V; j >= c[i]; j--)for (int k = M; k >= m[i]; k--)dp[j][k] = max(dp[j][k], dp[j - c[i]][k - m[i]] + w[i]);}cout << dp[V][M] << endl;
}

分组背包问题

  定义:

dp[k][j]:表示前k组物品花费代价j能取得的最大价值

子问题第k组物品状态:

①不选该组物品:dp[k][j]=dp[k-1][j];
②选该组物品:dp[k][j]=dp[k-1][j-c[i]+w[i]] 物品i属于k组

状态转移方程:

dp[k][j]=max(dp[k-1][j],dp[k-1][j-c[i]]+w[i])  

模板:

 for (int k = 1; k <= N; k++){int s;cin >> s; // 第k组的物品数量for (int i = 1; i <= s; i++)cin >> c[i] >> w[i]; // 组中每个物品i的属性for (int j = V; j >= 0; j--)for (int i = 1; i <= s; i++) // 保证每组物品只能选一个,可以覆盖之前组内物品最优解的来取最大值if (j >= c[i])dp[j] = max(dp[j], dp[j - c[i]] + w[i]);}

AcWing 分组背包问题

const int N = 110; // 注意初始化,否则会越界
int c[N], w[N], m[N], dp[N];
inline void solve()
{int N, V;cin >> N >> V;for (int k = 1; k <= N; k++){int s;cin >> s; // 第k组的物品数量for (int i = 1; i <= s; i++)cin >> c[i] >> w[i]; // 组中每个物品i的属性for (int j = V; j >= 0; j--)for (int i = 1; i <= s; i++) // 保证每组物品只能选一个,可以覆盖之前组内物品最优解的来取最大值if (j >= c[i])dp[j] = max(dp[j], dp[j - c[i]] + w[i]);}cout << dp[V] << endl;
}

Luogu P1757 通天之分组背包

const int N = 110;  // 注意初始化,否则会越界
const int M = 1010; // 注意初始化,否则会越界
int c[M], w[M], dp[M];
int g[N][N], b[M]; // g[k][i]表示小组k种第i个物品的编号,b[k]表示小组k的物品+1;
inline void solve()
{int N, V;cin >> V >> N;int t = 0, k = 0;for (int i = 1; i <= N; i++){cin >> c[i] >> w[i] >> k;t = max(t, k);  // 求小组的组数b[k]++;         // 小组k的物品+1;g[k][b[k]] = i; // 小组k中第b[k]个物品的编号为i;}for (int k = 1; k <= t; k++)for (int j = V; j >= 0; j--)for (int i = 1; i <= b[k]; i++)if (j >= c[g[k][i]])dp[j] = max(dp[j], dp[j - c[g[k][i]]] + w[g[k][i]]);cout << dp[V] << endl;
}

相关文章:

背包问题

目录 开端 01背包问题 AcWing 01背包问题 Luogu P2925干草出售 Luogu P1048采药 完全背包问题 AcWing 完全背包问题 Luogu P1853投资的最大效益 多重背包问题 AcWing 多重背包问题 I AcWing 多重背包问题 II Luogu P1776宝物筛选 混合背包问题 AcWing 混合背包问题…...

JavaSE | 初始Java(十一) | 抽象类和抽象接口

抽象类概念 在面向对象的概念中&#xff0c;所有的对象都是通过类来描绘的&#xff0c;但是反过来&#xff0c;并不是所有的类都是用来描绘对象的&#xff0c; 如果 一个类中没有包含足够的信息来描绘一个具体的对象&#xff0c;这样的类就是抽象类 在 Java 中&#xff0c;一个…...

产品经理如何科学的进行需求调研?

导语&#xff1a;作为产品经理&#xff0c;需求调研是开展工作的重要环节之一。科学、有效地进行需求调研不仅可以帮助产品经理更好地了解用户需求&#xff0c;还能指导产品设计和功能开发&#xff0c;提升产品的竞争力。本文将介绍几种科学的方法和技巧&#xff0c;帮助产品经…...

AI智能问答系统源码/AI绘画商业系统/支持GPT联网提问/支持Midjourney绘画

一、AI创作系统 SparkAi创作系统是基于国外很火的ChatGPT进行开发的AI智能问答系统和AI绘画系统。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图…...

玩具玩偶配送经营商城小程序的作用是什么?

玩具玩偶是小孩子们喜欢的产品&#xff0c;其市场需求度很高&#xff0c;以前玩具店里总是不缺乏客户&#xff0c;但现在随着人们生活品牌提升及消费形式改变&#xff0c;无论玩具厂商还是门店经销商都面对着不少痛点&#xff1a; 如拓客引流难、线上销售经营难、营销难、分销…...

latex表格内容换行

问题描述&#xff1a; 在用latex表格中编写公式时&#xff0c;可能出现公式太长&#xff0c;表格中后面的内容不能在文档中呈现&#xff0c;如下图1&#xff0c;故要进行行内内容的换行&#xff0c;使内容呈现完全而传统的\换行后,换行内容会顶格&#xff0c;如图2。 解决方…...

2023 牛客国庆day4 【10.2训练补题】

目录 B-Basic Gcd Problem&#xff08;素数筛快速幂&#xff09; H-Harder Gcd Problem&#xff08;素数&#xff09; B-Basic Gcd Problem&#xff08;素数筛快速幂&#xff09; 打表找规律发现答案为 (n质因子数目)^c #include<bits/stdc.h> using namespace std;…...

android的USB开发时 mUsbManager.getDeviceList()获取都为空

类提供的主要方法有&#xff1a; getDeviceList() 获得设备列表&#xff0c;返回的是一个HashMap.;hasPermission(UsbDevice device) 判断你的应用程序是否有接入此USB设备的权限&#xff0c;如果有则返回真&#xff0c;否则返回false.openDevice(UsbDevice device) 打开USB设…...

SpringCloud Alibaba - Seata 部署 TC 服务,并集成微服务

目录 一、Seata 架构 1.1、Seata 架构重要角色 1.2、部署 TC 服务 1.2.1、前言 1.2.2、下载 seata-server 包&#xff0c;解压 1.2.3、修改配置 1.2.4、在 nacos 中添加配置 1.2.5、创建数据库表 1.2.6、启动 TC 服务 1.3、微服务集成 Seata 1.3.1、引入依赖 1.3.2、…...

Java基础面试,接口和抽象类的区别?

接口和抽象类的区别&#xff1f; 抽象类可以存在普通成员函数&#xff0c;而接口中只能存在public abstract 方法。抽象类中的成员变量可以是各种类型的&#xff0c;而接口中的成员变量只能是public static final类型的.抽象类只能继承一个&#xff0c;接口可以实现多个。 接…...

《视觉 SLAM 十四讲》V2 第 4 讲 李群与李代数 【什么样的相机位姿 最符合 当前观测数据】

P71 文章目录 4.1 李群与李代数基础4.1.3 李代数的定义4.1.4 李代数 so(3)4.1.5 李代数 se(3) 4.2 指数与对数映射4.2.1 SO(3)上的指数映射罗德里格斯公式推导 4.2.2 SE(3) 上的指数映射SO(3),SE(3),so(3),se(3)的对应关系 4.3 李代数求导与扰动模型4.3.2 SO(3)上的李代数求导…...

【深蓝学院】手写VIO第4章--基于滑动窗口算法的 VIO 系统:可观性和 一致性--笔记

0. 内容 T1. 参考SLAM14讲P247直接可写&#xff0c;注意 ξ 1 , ξ 2 \xi_1,\xi_2 ξ1​,ξ2​之间有约束&#xff08;关系&#xff09;。 套用舒尔补公式&#xff1a; marg掉 ξ 1 \xi_1 ξ1​之后&#xff0c;信息被传递到 L 1 和 L 2 L_1和L_2 L1​和L2​之间了。 T2....

mfc 动态加载dll库,Mat转CImage,读ini配置文件,鼠标操作,在edit控件上画框,调试信息打印

动态加载dll库 h文件中添加 #include "mydll.h" #ifdef UNICODE //区分字符集 #define LoadLibrary LoadLibraryW #else #define LoadLibrary LoadLibraryA #endif // !UNICODEtypedef double(*mydllPtr)(int, int);类内添加&#xff1a; mydllPtr m_mydll; cpp…...

索尼 toio™应用创意开发征文|检测工业平台震动

虽然索尼toio Q宝机器人主要是为儿童教育娱乐开发的&#xff0c;但我认为它在工业等领域也有一定应用潜力。例如&#xff0c;工业领域经常会有某些平面在实际作业中持续震动&#xff0c;导致零件过疲劳、平台失去稳定等问题。而这样的平台往往位于机器内部&#xff0c;从外部很…...

【已解决】 Expected linebreaks to be ‘LF‘ but found ‘CRLF‘.

问题描述 团队都是用mac&#xff0c;只有我自己是windows&#xff0c;启动项目一直报错 Expected linebreaks to be ‘LF‘ but found ‘CRLF‘. 但我不能因为自己的问题去改团队配置&#xff0c;也尝试过该vscode配置默认是LF还是报错 思路 看文章vscode如何替换所有文件的…...

Java8 Lambda.stream.sorted() 方法使用浅析分享

文章目录 Java8 Lambda.stream.sorted() 方法使用浅析分享sorted() 重载方法一升序降序 sorted() 重载方法二升序降序多字段排序 mock代码 Java8 Lambda.stream.sorted() 方法使用浅析分享 本文主要分享运用 Java8 中的 Lambda.stream.sorted方法排序的使用&#xff01; sorted…...

Neural Networks for Fingerprint Recognition

Neural Computation ( IF 3.278 ) 摘要&#xff1a; 在采集指纹图像数据库后&#xff0c;设计了一种用于指纹识别的神经网络算法。当给出一对指纹图像时&#xff0c;算法输出两个图像来自同一手指的概率估计值。在一个实验中&#xff0c;神经网络使用几百对图像进行训练&…...

ChatGPT推出全新功能,引发人工智能合成声音担忧|百能云芯

人工智能AI科技企业OpenAI公司25日宣布&#xff0c;其聊天应用程序ChatGPT如今具备「看、听、说」能力&#xff0c;至少能够理解口语、用合成语音回应并且处理图像&#xff1b;但专家忧心&#xff0c;以假乱真与深度伪造的乱象可能变本加厉。 国家广播公司新闻网(NBC News)报导…...

Java 实现遍历一个文件夹,文件夹有100万数据,获取到修改时间在2天之内的数据

目录 1 需求2 实现1&#xff08;第一种方法&#xff09;2 实现2 &#xff08;推荐使用这个&#xff0c;快&#xff09;3 实现3&#xff08;推荐&#xff09; 1 需求 现在有一个文件夹&#xff0c;里面会一直存数据&#xff0c;动态的存数据&#xff0c;之后可能会达到100万&am…...

持续集成部署-k8s-命令行工具:基础命令的使用

持续集成部署-k8s-命令行工具:基础命令的使用 1. 资源类型与别名2. 资源操作2.1 创建对象2.2 显示和查找资源2.3 更新资源2.4 修补资源2.5 编辑资源2.6 scale 资源2.7 删除资源3. 格式化输出1. 资源类型与别名 资源类型缩写别名clusterscomponentstatusescsconfigmapscmdaemon…...

Windows系统优化神器:3步解决C盘爆红和电脑卡顿难题

Windows系统优化神器&#xff1a;3步解决C盘爆红和电脑卡顿难题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否曾经遇到过Windows电脑C盘空间不足的困扰&a…...

Windows本地AI开发环境搭建:OpenClaw与Ollama集成指南

1. 项目概述&#xff1a;一个为Windows开发者量身打造的本地AI开发环境如果你是一名在Windows 11上工作&#xff0c;同时又对本地运行大语言模型&#xff08;LLM&#xff09;和AI助手感兴趣的开发者&#xff0c;那么你很可能已经体验过那种“配置地狱”&#xff1a;WSL2、Docke…...

基于PanoSim5.0虚拟仿真平台的自主代客泊车AVP系统开发教程

1. PanoSim5.0与AVP系统开发入门指南 第一次接触PanoSim5.0时&#xff0c;我和大多数开发者一样被它丰富的功能模块震撼到了。这个国产仿真平台不仅支持高精度的车辆动力学建模&#xff0c;还能实现逼真的传感器仿真和环境渲染。对于自主代客泊车(AVP)这种需要反复测试的场景来…...

Claude Code / Cursor 写的代码,你敢直接上线吗?我踩过一次坑,再也不敢

&#x1f449; 这是一个或许对你有用的社群&#x1f431; 一对一交流/面试小册/简历优化/求职解惑&#xff0c;欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料&#xff1a; 《项目实战&#xff08;视频&#xff09;》&#xff1a;从书中学&#xff0c;往事上…...

搞懂这6个人工智能核心概念,再也不会被行业黑话难住

文章目录前言一、大模型&#xff08;LLM&#xff09;&#xff1a;读遍天下书的超级学霸1. 到底什么是大模型&#xff1f;2. 大模型的“超能力”与“致命缺陷”二、微调&#xff08;Fine-tuning&#xff09;&#xff1a;给学霸补专业课1. 微调到底在调什么&#xff1f;2. 2026年…...

工程师的调试礼仪:如何避免一次问候毁掉两小时工作成果

1. 项目概述&#xff1a;一次关于“Bug礼仪”的职场博弈在硬件开发的深水区&#xff0c;尤其是在产品临近交付的冲刺阶段&#xff0c;工程师与管理者之间的互动&#xff0c;往往比电路板上的信号完整性更考验“设计”。这不是一个关于具体芯片型号或调试命令的技术教程&#xf…...

使用Taotoken后模型API调用的延迟与稳定性观测体验分享

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用Taotoken后模型API调用的延迟与稳定性观测体验分享 作为一名日常需要与多种大模型API打交道的开发者&#xff0c;模型服务的稳…...

通过Taotoken官方价折扣与活动价降低大模型API使用门槛

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Taotoken官方折扣与活动价降低大模型API使用门槛 对于开发者而言&#xff0c;大模型API的成本是项目落地和持续迭代中必须考量…...

利用Taotoken的API兼容性将现有基于OpenAI的应用快速迁移上线

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken的API兼容性将现有基于OpenAI的应用快速迁移上线 对于已经投入开发并依赖OpenAI官方API的应用&#xff0c;切换到新的…...

Claude长文档推理能力跃迁全记录(2024–2026技术演进图谱)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Claude 2026长文档推理能力的定义与边界 Claude 2026 的长文档推理能力指其在单次上下文窗口内&#xff08;最大支持 2,000,000 tokens&#xff09;对跨章节、多模态混合结构化文本&#xff08;含嵌入表…...