蓝桥杯2024年第十五届省赛

E:宝石组合

根据给的公式化简后变为gcd(a,b,c)根据算数基本定理,推一下就可以了

然后我们对1到mx的树求约数,并记录约数的次数,我们选择一个最大的且次数大于等3的就是gcd

int mx;
vector<int> g[N];
vector<int> cnt[N];
int n;
int a[N];
void solve()
{cin >> n;for (int i = 1; i <= n; i++){cin >> a[i];mx = max(mx, a[i]);}for (int i = 1; i <= mx; i++){for (int j = 1; j * i <= mx; j++){g[i * j].pb(i);}}vector<int> ans;sort(a + 1, a + 1 + n);for (int i = 1; i <= n; i++){int t = a[i];for (auto ed : g[t]){cnt[ed].pb(t);}}int res = 0;for (int i = 1; i <= mx; i++)if (cnt[i].size() >= 3)res = i;for (int i = 0; i < 3; i++)cout << cnt[res][i] << " ";
}

H:拔河

赛时写的记录全部区间和,然后sort判断区间是否相交,但是时间复杂度好像有点问题,应该不是很对。

这里看了别人写的n_{}^{2}logn复杂度的做法,具体说就是,我们首先枚举右端点再左端点,然后对于枚举的每一段区间我们只看右边即可了,因为左边的合理的方案在左边已经枚举过了,然后二分找大于等于当前的,这里我们也只需看右边就行,不需要在减一了原理和上面相同,然后我们枚举玩一个右端点后,把以下一个右段点为起点的区间全部删去,这样满足了下一个循环

注意1需要特殊处理一下,一开始就不存进set里面

const int N = 1003;
int a[N];
int n;
int s[N];
signed main()
{scanf("%d", &n);for (int i = 1; i <= n; i++)scanf("%d", &a[i]), s[i] = s[i - 1] + a[i];multiset<int> S;for (int l = 1; l <= n; l++) // 提前把1全删去了{for (int r = l + 1; r <= n; r++){S.insert(s[r] - s[l]);}}int res = 1e18;for (int r = 1; r < n; r++) // 但是l==1的时候并没有,所以一开始就调过1{for (int l = 1; l <= r; l++) // 本身也被r==l的时候删去了{int val = s[r] - s[l - 1];auto it = S.lower_bound(val);if (it != S.end()){int ans = abs(*it - val);res = min(res, ans);}if (it != S.begin()){it--;int ans = abs(*it - val);res = min(res, ans);}}for (int r2 = r + 1; r2 <= n; r2++) // 提前把下一个断点删去{S.erase(S.find(s[r2] - s[r]));}}printf("%lld\n", res);return 0;
}

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

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

相关文章

如何应对MySQL单表数据量过大:垂直分表与水平分表策略解析

话接上回&#xff0c;单表最大数据建议两千万&#xff0c;那如果开发一个项目&#xff0c;预计注册量达到一个亿怎么办。 单表内放这么多数据&#xff0c;MYSQL底层B树的层级结构就可能会变得很高&#xff0c;磁盘io次数变多&#xff0c;性能会大幅度降低。所以考虑数据库分表…

光场相机建模与畸变校正改进方法

摘要&#xff1a;光场相机作为一种新型的成像系统&#xff0c;可以直接从一次曝光的图像中得到三维信息。为了能够更充分有效地利用光场数据包含的角度和位置信息&#xff0c;完成更加精准的场景深度计算&#xff0c;从而提升光场相机的三维重建的精度&#xff0c;需要实现精确…

大规模端云协同智能计算(大小模型端云协同联合学习)

原文作者&#xff1a;上海交通大学 吴帆 0 引言 目前&#xff0c;许多智能技术已经走入人们的日常生活&#xff0c;例如交互式商品推荐、人脸识别、语音识别、体征观测、疾病诊断、智能决策等&#xff0c;这些智能技术在为我们生活带来极大便利的同时&#xff0c;也深刻改变了…

解决VS2022创建项目只有解决方案看不到项目文件

问题&#xff1a;无法运行、看不到项目文件 解决&#xff1a; 检查环境变量是否正确

金属棒直线度测量仪:在线精准测量的关键工具

在现代工业生产中&#xff0c;金属棒的直线度是一个至关重要的参数。它的微小变化&#xff0c;直接关系到产品质量的优劣&#xff0c;因此准确测量金属棒的直线度成为了生产过程中的关键环节。 金属棒在线直线度测量仪应运而生&#xff0c;它是一种专门用于测量金属棒直线度的精…

秋招复习笔记——八股文部分:网络基础

TCP/IP 网络模型 应用层 最上层的&#xff0c;也是我们能直接接触到的就是应用层&#xff08;Application Layer&#xff09;&#xff0c;我们电脑或手机使用的应用软件都是在应用层实现。那么&#xff0c;当两个不同设备的应用需要通信的时候&#xff0c;应用就把应用数据传…

软件测试面试题分享(含答案+文档)

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 准备找工作的小伙伴们&#xff0c;今天我给大家带来了一些自动化测试面试题&#xff0c;在这个公…

Vue 读取后台二进制文件流转为图片显示

Vue 读取后台二进制文件流转为图片显示 后台返回格式 <img :src"payImg" id"image" style"width: 150px;height: 150px;" alt"">axios写法 重点 responseType: ‘blob’ &#xff0c; 使用的是res中的data blob this.$axios.…

解读MongoDB官方文档获取mongo7.0版本的安装步骤与基本使用

mongo式一款NOSQL数据库&#xff0c;用于存储非结构化数据&#xff0c;mongo是一种用于存储json的数据数据&#xff0c;可以通过mongo提供的命令解析json获取想要的值。 数据模型 了解关系数据库会很熟悉database,table,row,column的概念&#xff0c;分别是数据库&#xff0c…

C语言 | 自定义类型:struct结构体(详解)

目录&#xff1a; --前言 1. 结构体类型的定义与基础结构 2. 结构体的使用 3. typedef相关 4. 结构体的自引用 5. 结构体内存对齐 6. 结构体传参 7. 结构体实现位段 --前言&#xff1a; c语言中内置类型&#xff0c;也有自定义的类型。 例如&#xff1a;内置类型 in…

代码随想录算法训练营第四十一天| LeetCode 343. 整数拆分、96.不同的二叉搜索树

一、LeetCode 343. 整数拆分 题目链接/文章讲解/视频讲解&#xff1a;https://programmercarl.com/0343.%E6%95%B4%E6%95%B0%E6%8B%86%E5%88%86.html 状态&#xff1a;已解决 1.思路 题目的要求是要我们拆除某个给定的整数&#xff0c;让其拆分后的数相乘结果最大。因此我们知…