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

2.3学习总结

今天做了下上次测试没做出来的题目,作业中做了一题,看了下二叉树(一脸懵B)

P2240:部分背包问题

先求每堆金币的性价比(价值除以重量),将这些金币由性价比从高到低排序。

对于排好序的金币,循环,每当它的总重量少于背包空间,则全部装入,高于背包空间,结束。

将背包剩余空间大小的金币数装入背包。

#include <stdio.h>
#include <stdlib.h>
struct hly
{int v;int w;float b;
};
int main()
{struct hly a[105];int n,t,i,j;float num=0;scanf("%d %d",&n,&t);for(i=1;i<=n;i++){scanf("%d %d",&a[i].v,&a[i].w);a[i].b=(float)a[i].w/a[i].v;}for(i=1;i<=n-1;i++){for(j=i+1;j<=n;j++){if(a[i].b<a[j].b){struct hly t;t=a[i];a[i]=a[j];a[j]=t;}}}for(i=1;i<=n;i++){if(a[i].v>t)break;t-=a[i].v;num+=a[i].w;}if(i<n){num+=(float)t*(a[i].b);}printf("%.2lf\n",num);return 0;
}

P1757:通天之分组背包

分组背包问题就是在01背包问题的基础之上,多了一个在每个组中选出最优的那个物品(或者不选)。

#include <stdio.h>
#include <stdlib.h>
long long v[1005][1005],w[1005][1005],s[1005],f[1005];
long long max(long long a,long long b)
{if(a>b)return a;elsereturn b;
}
int main()
{int m,n;scanf("%d %d",&m,&n);for(int i=1;i<=n;i++){int a,b,c;scanf("%d %d %d",&a,&b,&c);s[c]+=1;v[c][s[c]]=a;w[c][s[c]]=b;}for(int i=1;i<=n;i++){for(int j=m;j>=1;j--){for(int k=1;k<=s[i];k++){if(v[i][k]<=j){f[j]=max(f[j],f[j-v[i][k]]+w[i][k]);}}}}printf("%lld",f[m]);return 0;
}

P1540:机器翻译

显而易见通过队列进行求解。将队列头跟队列尾初始化为1

对于输入的每个数,查询队列中是否含有这个数,通过变量flag的值来检测有无。

队列中没有则判断队列尾跟头的差值是否大于内容存量,大于的话将队列头出队,head++;将这个数存入队列尾,tail++;查询次数加1。

#include <stdio.h>
#include <stdlib.h>
struct hly
{int data[1005];int head;int tail;
};
int main()
{struct hly q;int m,n,num=0;q.head=1;q.tail=1;scanf("%d %d",&m,&n);for(int i=1;i<=n;i++){int s,flag=0;scanf("%d",&s);for(int j=q.head;j<q.tail;j++){if(q.data[j]==s){flag=1;break;}}if(flag==0){if(q.tail-q.head>=m){q.head++;}q.data[q.tail]=s;num++;q.tail++;}}printf("%d\n",num);return 0;
}

相关文章:

2.3学习总结

今天做了下上次测试没做出来的题目&#xff0c;作业中做了一题&#xff0c;看了下二叉树&#xff08;一脸懵B&#xff09; P2240&#xff1a;部分背包问题 先求每堆金币的性价比&#xff08;价值除以重量&#xff09;&#xff0c;将这些金币由性价比从高到低排序。 对于排好…...

前端力扣刷题 | 6:hot100之 矩阵

73. 矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 法一&#xff1a; var setZeroes function(matrix) {let setX new Set(); // 用于存储需要置零的行索引let setY new Set(); //…...

docker gitlab arm64 版本安装部署

前言&#xff1a; 使用RK3588 部署gitlab 平台作为个人或小型团队办公代码版本使用 1. docker 安装 sudo apt install docker* 2. 获取arm版本的gitlab GitHub - zengxs/gitlab-arm64: GitLab docker image (CE & EE) for arm64 git clone https://github.com/zengxs…...

路径规划之启发式算法之二十九:鸽群算法(Pigeon-inspired Optimization, PIO)

鸽群算法(Pigeon-inspired Optimization, PIO)是一种基于自然界中鸽子群体行为的智能优化算法,由Duan等人于2014年提出。该算法模拟了鸽子在飞行过程中利用地标、太阳和磁场等导航机制的行为,具有简单、高效和易于实现的特点,适用于解决连续优化问题。 更多的仿生群体算法…...

【AudioClassificationModelZoo-Pytorch】基于Pytorch的声音事件检测分类系统

源码&#xff1a;https://github.com/Shybert-AI/AudioClassificationModelZoo-Pytorch 模型测试表 模型网络结构batch_sizeFLOPs(G)Params(M)特征提取方式数据集类别数量模型验证集性能EcapaTdnn1280.486.1melUrbanSound8K10accuracy0.974, precision0.972 recall0.967, F1-s…...

一文讲解Java中的ArrayList和LinkedList

ArrayList和LinkedList有什么区别&#xff1f; ArrayList 是基于数组实现的&#xff0c;LinkedList 是基于链表实现的。 二者用途有什么不同&#xff1f; 多数情况下&#xff0c;ArrayList更利于查找&#xff0c;LinkedList更利于增删 由于 ArrayList 是基于数组实现的&#…...

CNN的各种知识点(五):平均精度均值(mean Average Precision, mAP)

平均精度均值&#xff08;mean Average Precision, mAP&#xff09; 1. 平均精度均值&#xff08;mean Average Precision, mAP&#xff09;概念&#xff1a;计算步骤&#xff1a;具体例子&#xff1a;重要说明&#xff1a;典型值范围&#xff1a; 总结&#xff1a; 1. 平均精度…...

【优先算法】专题——前缀和

目录 一、【模版】前缀和 参考代码&#xff1a; 二、【模版】 二维前缀和 参考代码&#xff1a; 三、寻找数组的中心下标 参考代码&#xff1a; 四、除自身以外数组的乘积 参考代码&#xff1a; 五、和为K的子数组 参考代码&#xff1a; 六、和可被K整除的子数组 参…...

gitea - fatal: Authentication failed

文章目录 gitea - fatal: Authentication failed概述run_gitea_on_my_pkm.bat 笔记删除windows凭证管理器中对应的url认证凭证启动gitea服务端的命令行正常用 TortoiseGit 提交代码备注END gitea - fatal: Authentication failed 概述 本地的git归档服务端使用gitea. 原来的用…...

基于Spring Security 6的OAuth2 系列之八 - 授权服务器--Spring Authrization Server的基本原理

之所以想写这一系列&#xff0c;是因为之前工作过程中使用Spring Security OAuth2搭建了网关和授权服务器&#xff0c;但当时基于spring-boot 2.3.x&#xff0c;其默认的Spring Security是5.3.x。之后新项目升级到了spring-boot 3.3.0&#xff0c;结果一看Spring Security也升级…...

蓝桥与力扣刷题(234 回文链表)

题目&#xff1a;给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为回文链表。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,2,1] 输出&#xff1a;true示例 2&#xff1a; 输入&…...

Google C++ Style / 谷歌C++开源风格

文章目录 前言1. 头文件1.1 自给自足的头文件1.2 #define 防护符1.3 导入你的依赖1.4 前向声明1.5 内联函数1.6 #include 的路径及顺序 2. 作用域2.1 命名空间2.2 内部链接2.3 非成员函数、静态成员函数和全局函数2.4 局部变量2.5 静态和全局变量2.6 thread_local 变量 3. 类3.…...

Windows图形界面(GUI)-QT-C/C++ - QT Tab Widget

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 一、概述 1.1 什么是 QTabWidget&#xff1f; 1.2 使用场景 二、常见样式 2.1 选项卡式界面 2.2 动态添加和删除选项卡 2.3 自定义选项卡标题和图标 三、属性设置 3.1 添加页面&…...

【大数据技术】教程05:本机DataGrip远程连接虚拟机MySQL/Hive

本机DataGrip远程连接虚拟机MySQL/Hive datagrip-2024.3.4VMware Workstation Pro 16CentOS-Stream-10-latest-x86_64-dvd1.iso写在前面 本文主要介绍如何使用本机的DataGrip连接虚拟机的MySQL数据库和Hive数据库,提高编程效率。 安装DataGrip 请按照以下步骤安装DataGrip软…...

C++:结构体和类

在之前的博客中已经讲过了C语言中的结构体概念了&#xff0c;重复的内容在这儿就不赘述了。C中的结构体在C语言的基础上还有些补充&#xff0c;在这里说明一下&#xff0c;顺便简单地讲一下类的概念。 一、成员函数 结构体类型声明的关键字是 struct &#xff0c;在C中结构体…...

MATLAB的数据类型和各类数据类型转化示例

一、MATLAB的数据类型 在MATLAB中 &#xff0c;数据类型是非常重要的概念&#xff0c;因为它们决定了如何存储和操作数据。MATLAB支持数值型、字符型、字符串型、逻辑型、结构体、单元数组、数组和矩阵等多种数据类型。MATLAB 是一种动态类型语言&#xff0c;这意味着变量的数…...

UE求职Demo开发日志#19 给物品找图标,实现装备增加属性,背包栏UI显示装备

1 将用到的图标找好&#xff0c;放一起 DataTable里对应好图标 测试一下能正确获取&#xff1a; 2 装备增强属性思路 给FMyItemInfo添加一个枚举变量记录类型&#xff08;物品&#xff0c;道具&#xff0c;装备&#xff0c;饰品&#xff0c;武器&#xff09;--> 扩展DataT…...

C++泛型编程指南09 类模板实现和使用友元

文章目录 第2章 类模板 Stack 的实现2.1 类模板 Stack 的实现 (Implementation of Class Template Stack)2.1.1 声明类模板 (Declaration of Class Templates)2.1.2 成员函数实现 (Implementation of Member Functions) 2.2 使用类模板 Stack脚注改进后的叙述总结脚注2.3 类模板…...

使用MATLAB进行雷达数据采集可视化

本文使用轮趣科技N10雷达&#xff0c;需要源码可在后台私信或者资源自取 1. 项目概述 本项目旨在通过 MATLAB 读取 N10 激光雷达 的数据&#xff0c;并进行 实时 3D 点云可视化。数据通过 串口 传输&#xff0c;并经过解析后转换为 三维坐标点&#xff0c;最终使用 pcplayer 进…...

【Elasticsearch】allow_no_indices

- **allow_no_indices 参数的作用**&#xff1a; 该参数用于控制当请求的目标索引&#xff08;通过通配符、别名或 _all 指定&#xff09;不存在或已关闭时&#xff0c;Elasticsearch 的行为。 - **默认行为**&#xff1a; 如果未显式设置该参数&#xff0c;默认值为 …...

水凝膜、钢化膜、护景贴大对决:一张表看懂该买谁

水凝膜、钢化膜、护景贴大对决&#xff1a;一张表看懂该买谁手机屏幕保护膜主要有三种&#xff1a;水凝膜、普通钢化膜和护景贴&#xff08;悟赫德为代表&#xff09;。很多人不知道它们到底有什么区别&#xff0c;我们从六个维度给你讲清楚。材料结构。水凝膜是单层软塑料&…...

Arm Neoverse CMN-650架构与编程实践详解

1. CMN-650架构概述Arm Neoverse CMN-650是一种基于Mesh拓扑的一致性互连网络&#xff0c;专为多核处理器和加速器系统设计。作为SoC内部的数据高速公路&#xff0c;它通过优化的路由算法和一致性协议&#xff0c;实现了高带宽、低延迟的核间通信。1.1 核心组件解析CMN-650由多…...

被安排做“脏活累活”怎么办?聪明人把它变成了核心竞争力

在软件测试的职业旅程中&#xff0c;几乎每一位从业者都会遇到这样的时刻&#xff1a;领导把最繁琐的模块分给你&#xff0c;把重复度最高的回归用例交给你&#xff0c;把无人问津的旧系统兼容性测试派给你。这些任务往往技术含量看似不高、耗时巨大且难以在简历上写出亮点&…...

风冷热泵中央空调系统安装:从冷热源到末端联动的完整解析

一、什么是风冷热泵中央空调系统安装&#xff1f;风冷热泵中央空调系统安装&#xff0c;是指在办公楼、商业综合体、酒店、学校、医院、厂房办公区、实验室、园区配套建筑以及各类中小型公共建筑中&#xff0c;根据建筑冷热负荷、使用时段、空间功能和节能要求&#xff0c;对风…...

微内核操作系统nanoclaw:面向嵌入式与边缘计算的极简设计

1. 项目概述&#xff1a;一个为嵌入式与边缘计算而生的微型操作系统最近在折腾一些资源极其有限的嵌入式板子&#xff0c;比如只有几十KB内存的MCU&#xff0c;或者那些主打低功耗的边缘计算节点。在这些场景下&#xff0c;跑一个完整的Linux系统简直是天方夜谭&#xff0c;而传…...

内容创作团队如何借助Taotoken聚合API管理多个模型的调用成本

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 内容创作团队如何借助Taotoken聚合API管理多个模型的调用成本 对于内容创作团队而言&#xff0c;大模型已成为提升写作效率、优化内…...

基于MCP协议构建AI助手本地工具服务器:从原理到实战

1. 项目概述与核心价值最近在折腾AI Agent的开发&#xff0c;发现一个挺有意思的项目&#xff0c;叫kirill-markin/example-mcp-server。这名字听起来平平无奇&#xff0c;但如果你正在研究如何让ChatGPT、Claude这类大模型助手变得更“能干”&#xff0c;能直接操作你电脑上的…...

STM32驱动安信可Rd-04毫米波雷达:硬件改造、I2C驱动移植与参数调优全攻略

1. 项目概述&#xff1a;从零开始驱动安信可Rd-04雷达模组最近在做一个智能感应的小项目&#xff0c;需要用到人体存在检测&#xff0c;对比了几种方案后&#xff0c;最终选择了安信可的Rd-04毫米波雷达模组。这玩意儿体积小、功耗低&#xff0c;最关键的是价格相当亲民&#x…...

ChatGPT Web:5分钟快速搭建你的专属AI聊天室

ChatGPT Web&#xff1a;5分钟快速搭建你的专属AI聊天室 【免费下载链接】chatgpt-web A third-party ChatGPT Web UI page built with Express and Vue3, through the official OpenAI completion API. / 用 Express 和 Vue3 搭建的第三方 ChatGPT 前端页面, 基于 OpenAI 官方…...

Grid++Report设计器避坑指南:搞不定自动换行和字体缩小?看这篇就够了

GridReport设计器避坑指南&#xff1a;搞不定自动换行和字体缩小&#xff1f;看这篇就够了 当你面对一份需要展示长商品描述、多行地址或其他复杂文本的报表时&#xff0c;是否曾被GridReport的自动换行和字体缩小功能折磨得焦头烂额&#xff1f;作为一款功能强大的报表设计工具…...