笔试专题(七)

文章目录

  • 乒乓球筐(哈希)
    • 题解
    • 代码
  • 组队竞赛
    • 题解
    • 代码
  • 删除相邻数字的最大分数(线性dp)
    • 题解
    • 代码

乒乓球筐(哈希)

题目链接
在这里插入图片描述

题解

1. 两个哈希表
先统计第一个字符串中的字符个数,再统计第二个字符串中的字符个数,如果第一个字符串中的字符个数大于等于第二个字符串中的字符个数,返回true,否则返回false
2. 用一个哈希表
先统计第一个字符串中的字符个数,然后再减去第二个字符串中的字符个数,如果hash表中某个字符的个数小于0就说明该字符不在第一字符串中,而只在第二个字符串中,返回false,否则返回true

在这里插入图片描述

代码

#include <iostream>
using namespace std;int main()
{string s,t;while(cin >> s >> t)// 未知组数的输入{int hash[26] = {0};int n = t.size();int flag = 1;for(auto ch : s){hash[ch - 'A']++;}for(int i = 0;i < n;i++){hash[t[i] - 'A']--;if(hash[t[i] - 'A'] < 0) {flag = 0;cout << "No" << '\n';break;} }if(flag)cout << "Yes" << '\n';}return 0;
}

组队竞赛

题目链接
在这里插入图片描述

题解

1. 排序 + 贪心
2. 总和最大 -> 每个小组的分数最大 -> 那么第二个人的分数尽可能大
3. 那就让第一个人最小,第三个人最大,第二个人次大

在这里插入图片描述

代码

#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;int main()
{int n; cin >> n;vector<int> ret(3*n);for(int i = 0;i < 3*n;i++) cin >> ret[i];sort(ret.begin(),ret.end());long long sum = 0;int count = n;for(int i = 3*n-2;i >= 0;i-=2){if(count == 0) break;sum += ret[i];count--;}cout << sum << '\n';return 0;
}

删除相邻数字的最大分数(线性dp)

题目链接
在这里插入图片描述

题解

1. 线性dp,可以转换为打家劫舍问题
2. 让hash表的下标为数组中的值,hash表中的数据对应所有相同的下标的数之和
3. 细节问题:可以让dp数组的长度为1e4 + 10,可以不用判断hash表中的最大的数为数组的长度,dp数组第0个值都初始化为0,因为原数组中没有0的值,返回选或者不选中dp数组的最大值,对应N-1下表中两个数组中的最大值
4. 为什么可以转换为打家劫舍问题?
因为数组中出现了相邻的数选或者不选,这个数选了下一个数就不能选

在这里插入图片描述

代码

#include <iostream>
#include<vector>
using namespace std;const int N = 1e4 + 10;
const int M = 1e5 + 10;
int ret[M];int main()
{int hash[N] = { 0 };int n = 0;cin >> n;for (int i = 0; i < n; i++) cin >> ret[i];for (int i = 0; i < n; i++){hash[ret[i]] += ret[i];}vector<int> f(N);// 选auto g = f;// 不选for (int i = 1; i < N; i++){f[i] = g[i - 1] + hash[i];g[i] = max(g[i - 1], f[i - 1]);}cout << max(f[N - 1], g[N - 1]) << '\n';return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/77018.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

清晰易懂的 Flutter 卸载和清理教程

以下是为 Flutter 彻底卸载与清理教程&#xff0c;覆盖 Windows、macOS、Linux 系统&#xff0c;步骤清晰无残留&#xff0c;确保完全删除 Flutter SDK、依赖工具及 IDE 配置。 一、通用步骤&#xff1a;确认 Flutter 安装方式 Flutter 通常通过以下方式安装&#xff1a; 手动…

关于反卷积

&#x1f9e0; 什么是反卷积&#xff1f; 反卷积&#xff08;Deconvolution&#xff09;&#xff0c;通常也称为转置卷积&#xff08;Transpose Convolution&#xff09;&#xff0c;是一种用于扩展输入特征图的操作&#xff0c;通常用于生成图像或上采样任务中。与标准卷积操…

【机器学习】ROC 曲线与 PR 曲线

目录 一、混淆矩阵&#xff1a;分类评估的基础 二. ROC 曲线 (Receiver Operating Characteristic Curve) 三. PR 曲线 (Precision-Recall Curve) 3.1 核心思想 4. 何时使用 ROC 曲线和 PR 曲线&#xff1f; 实验结果 6. 总结 在机器学习的分类任务中&#xff0c;我们训…

Python高阶函数-map

map() 是 Python 内置的一个高阶函数&#xff0c;它接收一个函数和一个可迭代对象作为参数&#xff0c;将函数依次作用在可迭代对象的每个元素上&#xff0c;并返回一个迭代器&#xff08;Python 3.x 中&#xff09;。 基本语法 map(function, iterable, ...)function: 应用于…

上海餐饮市场数据分析与可视化

上海作为中国的经济中心和国际化大都市,其餐饮市场具有高度的多样性和竞争性。随着消费者需求的不断变化,餐饮行业的从业者和投资者需要深入了解市场现状和趋势,以便制定更有效的商业策略。本文将通过数据分析和可视化技术,深入探讨上海餐饮市场的现状和趋势,为餐饮从业者…

MySQL基础 [五] - 表的增删查改

目录 Create&#xff08;insert&#xff09; Retrieve&#xff08;select&#xff09; where条件 ​编辑 NULL的查询 结果排序(order by) 筛选分页结果 (limit) Update Delete 删除表 截断表&#xff08;truncate&#xff09; 插入查询结果&#xff08;insertselect&…

SQL:Primary Key(主键)和Foreign Key(外键)

目录 1. Key&#xff08;键&#xff09; 2. Index&#xff08;索引&#xff09; 3.Key和Index的区别 4. Primary Key&#xff08;主键&#xff09; 5. Foreign Key&#xff08;外键&#xff09; 6.主键和外键的关系 温馨提示&#xff1a; 闪电按钮不同的执行功能 首先&…

2025年- H1-Lc109-160. 相交列表--java版

1.题目描述 2.思路 “双指针切换链表头” 思路一&#xff1a;双指针路径对齐 while (pA ! pB) { pA (pA null) ? headB : pA.next; pB (pB null) ? headA : pB.next; } 让两个指针走相同的总路径长度&#xff01; 设&#xff1a; 链表 A 独有部分长度是 lenA 链表 B …

PyTorch 深度学习 || 6. Transformer | Ch6.3 Transformer 简单案例

1. 简单案例 这个代码是一个简单的 Transformer 模型的实现,这个例子展示了一个基本的序列到序列(seq2seq)任务,比如将一个数字序列转换为另一个数字序列。可以用于学习和理解 Transformer 的基本结构和工作原理。 import torch import torch.nn as nn import math# 位置…

基础算法篇(4)(蓝桥杯常考点)—数据结构(进阶)

前言 这期将会讲到基础算法篇里面的数据结构&#xff08;进阶&#xff09;&#xff0c;主要包括单调栈&#xff0c;单调队列&#xff0c;并查集&#xff0c;扩展域并查集&#xff0c;带权并查集&#xff0c;字符串哈希&#xff0c;Trie树。 数据结构(进阶&#xff09;正文 单…

【AI学习】初步了解Gradio

Gradio 是一个开源的 Python 库&#xff0c;专注于快速构建交互式 Web 界面&#xff0c;特别适用于机器学习模型、数据科学项目或任意 Python 函数的演示与部署。它通过极简的代码实现前后端一体化&#xff0c;无需前端开发经验即可创建功能丰富的应用。以下是 Gradio 的核心特…

Overleaf 论文提交 Arxiv

Contents References 清除 Overleaf 中所有编译 error&#xff0c;并且保证 main.tex 文件在 project 最上层参考文件 .bib 转 .bbl. project 编译成功后可以在 Overleaf 的 Recompile 按钮右侧找到 “Logs and output files”&#xff0c;点进去之后右下角可以点开 “Other lo…

【Android Audio】Parameter Framework - pfw

Parameter Framework - Android AudioPolicy Engine 使用 libengineconfigurable.so 来取缔默认安卓音频引擎 libenginedefault.so&#xff0c;因为默认安卓音频引擎是通过代码来决定策略&#xff0c;然而 libengineconfigurable 采用读取pfw类型的文件来实现音频策略配置。 …

服务器虚拟化技术深度解析:医药流通行业IT架构优化指南

一、服务器虚拟化的定义与原理 &#xff08;一&#xff09;技术定义&#xff1a;从物理到虚拟的资源重构 服务器虚拟化是通过软件层&#xff08;Hypervisor&#xff09;将物理服务器的CPU、内存、存储、网络等硬件资源抽象为逻辑资源池&#xff0c;分割成多个相互隔离的虚拟机…

babel-runtime 如何缩小打包体积

&#x1f916; 作者简介&#xff1a;水煮白菜王&#xff0c;一位前端劝退师 &#x1f47b; &#x1f440; 文章专栏&#xff1a; 前端专栏 &#xff0c;记录一下平时在博客写作中&#xff0c;总结出的一些开发技巧和知识归纳总结✍。 感谢支持&#x1f495;&#x1f495;&#…

剑指Offer(数据结构与算法面试题精讲)C++版——day7

剑指Offer&#xff08;数据结构与算法面试题精讲&#xff09;C版——day7 题目一&#xff1a;最多删除一个字符得到回文题目二&#xff1a;回文子字符串的个数题目三&#xff1a;删除倒数第k个节点 题目一&#xff1a;最多删除一个字符得到回文 这里我们可以在经典的字符串回文…

2025年常见渗透测试面试题(题目+回答)

网络安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 常见面试题 一、渗透测试经历与技术复盘 二、高频漏洞类型与攻防体系 三、渗透工具链与技术特性 四、…

大数据与人工智能之大数据架构(Hadoop、Spark、Flink)

一、核心特性与架构设计 1. Hadoop&#xff1a;分布式批处理的基石 核心组件&#xff1a; HDFS&#xff1a;分布式文件系统&#xff0c;支持大规模数据存储。MapReduce&#xff1a;基于“分而治之”的批处理模型&#xff0c;适合离线分析。 架构特点&#xff1a; 批处理主导&…

从IoT到AIoT:智能边界的拓展与AI未来趋势预测

文章目录 引言&#xff1a;从连接万物到感知万物1. AIoT的本质&#xff1a;将智能嵌入万物2. AIoT的推动力量与挑战2.1 推动力量2.2 关键挑战 3. 五大AIoT未来趋势预测趋势一&#xff1a;边缘智能将成为主流架构趋势二&#xff1a;AI模型将向自适应与多任务演进趋势三&#xff…

从本地新建文件夹到拉取远程仓库 dev 分支的完整步骤

《从本地新建文件夹到拉取远程仓库 dev 分支的完整步骤》 下面为你详细介绍从本地新建文件夹开始&#xff0c;将远程仓库的 dev 分支拉取到本地的具体步骤&#xff1a; 1. 创建新文件夹 在本地电脑上新建一个文件夹&#xff0c;作为存放项目代码的目录。你可以通过图形界面操…