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

笔试——Day32

文章目录

  • 第一题
    • 题目
    • 思路
    • 代码
  • 第二题
    • 题目:
    • 思路
    • 代码
  • 第三题
    • 题目:
    • 思路
    • 代码

第一题

题目

素数回文
在这里插入图片描述

思路

模拟

构建新的数字,判断该数是否为素数

代码

在这里插入图片描述

第二题

题目:

活动安排
在这里插入图片描述

思路

区间问题的贪⼼:排序,然后分情况讨论

代码

在这里插入图片描述

第三题

题目:

合唱团
在这里插入图片描述

思路

动态规划

  • 状态表示:
    • max_dp[i][j][1, i]挑选,挑了j个人,a[i]必选,此时的最大乘积;
    • min_dp[i][j][1, i]挑选,挑了j个人,a[i]必选,此时的最小乘积;
  • 状态转移方程:

代码

#include <iostream>
#include <vector>using namespace std;long long maxProduct(vector<int>& a, int n, int k, int d) {vector<vector<long long>> max_dp(n+1, vector<long long>(k+1, LLONG_MIN));vector<vector<long long>> min_dp(n+1, vector<long long>(k+1, LLONG_MAX));// 初始化:只选1个学生的情况for (int i = 1; i <= n; ++i) {max_dp[i][1] = a[i-1];min_dp[i][1] = a[i-1];}for (int j = 2; j <= k; ++j) {for (int i = j; i <= n; ++i) {// 检查前d个位置for (int m = max(i-d, j-1); m < i; ++m) {long long temp1 = max_dp[m][j-1] * a[i-1];long long temp2 = min_dp[m][j-1] * a[i-1];max_dp[i][j] = max(max_dp[i][j], max(temp1, temp2));min_dp[i][j] = min(min_dp[i][j], min(temp1, temp2));}}}long long result = LLONG_MIN;for (int i = k; i <= n; ++i) {result = max(result, max_dp[i][k]);}return result;
}int main() {int n;cin >> n;vector<int> a(n);for (int i = 0; i < n; ++i) {cin >> a[i];}int k, d;cin >> k >> d;cout << maxProduct(a, n, k, d) << endl;return 0;
}
http://www.dtcms.com/a/320983.html

相关文章:

  • pycharm常见环境配置和快捷键
  • 微软XBOX游戏部门大裁员
  • vue项目常见BUG和优化注意事项
  • HTTP 请求返回状态码和具体含义?200、400、403、404、502、503、504等
  • OpenBMC中libgpio架构与驱动交互全解析:从硬件映射到应用控制
  • 智能厨具机器人的革命性升级:Deepoc具身模型外拓板技术解析
  • 【Rust】多级目录模块化集成测试——以Cucumber为例
  • 服务器登上去,显示 failed to send WATCHDOG 重启有效吗?
  • 当服务器多了时,如何管理?
  • 机柜内部除了服务器还有哪些组件?
  • 防火墙概述
  • 手动开发一个TCP服务器调试工具(四):构建完整的UI与功能联合的TCP服务器应用
  • 脚本统计MongoDB集合结构信息
  • 从0开始的中后台管理系统-5(userList动态展示以及上传图片和弹出创建用户表单)
  • 【MongoDB学习笔记1】MongoDB的常用命令介绍-数据库操作、集合操作、文档操作、文档分页查询、高级查询
  • 操作系统: 线程(Thread)
  • Lazada东南亚矩阵营销破局:指纹手机如何以“批量智控+数据中枢”重构运营生态
  • Android 之 OOM的产生和解决办法
  • Android 之 ANR问题的全面解析与优化方案
  • 综合项目记录:自动化备份全网服务器数据平台
  • 日本站群服务器与普通日本服务器对比
  • 深入解析C++流运算符(>>和<<)重载:为何必须使用全局函数与友元机制
  • [论文阅读] 人工智能 + 软件工程 | LLM协作新突破:用多智能体强化学习实现高效协同——解析MAGRPO算法
  • 在发布应用程序内测时如何选择合适的分发上架方式?
  • Vite 深度解析:现代前端开发引擎
  • 瑞利杂波背景下不同环境的虚警概率与目标检测概率仿真
  • C# 异步编程(GUI程序中的异步操作)
  • 日常开发-5,工具使用。datagrip mysql 写查询语句 数据库表名和字段 无法提示
  • 语音识别 SenseVoice与FunASR对比
  • 机器学习——07 朴素贝叶斯