12.12打卡

01背包问题的理解...

题目链接:22背包专题 [Cloned] - Virtual Judge (csgrandeur.cn)

一开始有几个问题导致没有很明白...现在基本上可以理解了

首先就是对于mjz[i][j](max价值)数组的理解。是对于前i个物品有j个空间时拿的最大价值是多少。

然后就是状态转移方程:mjz[i][j]=max(mjz[i-1][j],mjz[i-1][j-w[i]]+jz[i]);

这个一开始有一点小问题就是为什么要取最大值,因为在拿取第i个物品的时候就要腾出来第i个物品的空间,而在腾出来这些物品的时候可能会丢掉一些物品,然后就要判断是丢掉这些物品然后加上第i个物品价值大还是不带上第i个物品的价值大..

#include<iostream>
#include<cmath>
#include<cstring>

using namespace std;
int mjz[105][10005];
int w[105],jz[105];
int main(){
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
       cin>>w[i]>>jz[i];
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            if(j<w[i]) mjz[i][j]=mjz[i-1][j];
            else {
                mjz[i][j]=max(mjz[i-1][j],mjz[i-1][j-w[i]]+jz[i]);
            }
        }
    }
    cout<<mjz[n][m];
}

然后就是对01背包的优化..

在动态转移的时候其实就只用到了两行一维数组,那么就可以变成一维数组,分为原来和更新后的大小。就是和原来自己比较和带上i个物品比较...

那么状态转移方程就是:mjz[j]=max(mjz[j-w[i]]+jz[i],mjz[j]);

在一维的情况下注意j循环要从后开始,因为如果要从前开始的那么就会修改原来mjz[j-w[i]]的值会导致不是上一个状态的价值,而如果从后开始往前判断,mjz[j-w[i]]就是原状态下的价值。

优化代码:

#include<iostream>
#include<cmath>
#include<cstring>

using namespace std;
int mjz[10005];
int w[105],jz[105];
int main(){
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
       cin>>w[i]>>jz[i];
    }
    for(int i=1;i<=n;i++){
        for(int j=m;j>=w[i];j--){
            mjz[j]=max(mjz[j-w[i]]+jz[i],mjz[j]);
        }
    }
    cout<<mjz[m];
}

### Deepin 12.12 系统特性 Deepin 12.12 是深度操作系统的一个重要版本,其桌面环境(DDE)得到了显著优化和增强[^5]。以下是该版本的一些主要特性: - **深度桌面环境改进**:此版本对深度桌面环境进行了功能与稳定性的极大优化,提升了用户体验。 - **搜狗输入法支持**:首次集成了搜狗输入法的 Linux Deepin 社区版,针对 Deepin 操作系统进行了多项优化[^1]。 - **软件中心更新**:解决了更新管理器冲突导致的安装失败问题,并添加了“下载管理”页面和“智能清理下载缓存”功能[^4]。 - **多语言支持**:除了原有的中文支持外,还增加了英文和繁体中文的支持[^4]。 - **性能优化**:内存占用、启动速度以及界面交互体验均得到了优化[^4]。 ### 下载链接 Deepin 12.12 的下载链接可以通过以下地址获取。虽然引用中未直接提及 12.12 的具体下载链接,但可以根据社区惯例访问 Deepin 官方网站或镜像站点进行下载。以下是参考链接格式: - [Deepin 官方下载页面](https://cdimage.deepin.com/releases/)(请根据实际需要选择对应版本) 如果需要社区版本,可以参考类似链接结构,例如: - [Deepin 社区 23 版下载](https://cdimage.deepin.com/releases/23/amd64/deepin-desktop-community-23-amd64.iso)[^3] ### 安装指南 安装 Deepin 12.12 可以遵循以下步骤: 1. **准备安装介质**:下载 ISO 文件后,使用工具如 Rufus 或 Etcher 将其写入 U 盘,制作可引导的安装盘。 2. **启动安装程序**:将 U 盘插入目标计算机,从 BIOS/UEFI 设置中选择从 U 盘启动。 3. **选择安装类型**:进入安装界面后,可以选择尝试系统或直接安装。推荐先尝试系统以确保兼容性。 4. **分区配置**:在安装过程中,用户可以选择手动分区或使用自动分区选项。建议为根目录(`/`)、交换分区(`swap`)和主目录(`/home`)分配空间。 5. **完成安装**:按照向导完成剩余步骤,重启计算机并移除安装介质即可进入新安装的 Deepin 系统[^2]。 ```bash # 如果需要检查安装介质完整性,可以运行以下命令 sha256sum deepin-desktop-community-23-amd64.iso ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值