牛客周赛round91

C

若序列为1 4 5 7 9 1 2 3,1 + 9一定大于1 + 1或1 + 4...所以只需要记录当前数之前数字的最大值,然后遍历取max即可,所以对于上面的序列有效的比较为1 + 9,2 + 9,3 + 9取max

代码

//求大于当前数的最大值,然后取min即可
#include<bits/stdc++.h>using namespace std;const int N = 2e5 + 10;
int a[N], mi[N];int T, n;
int main()
{cin >> T;while(T -- ){int ans = -1;cin >> n;for(int i = 1; i <= n; i ++){cin >> a[i], mi[i] = max(a[i], mi[i - 1]);}for(int i = n; i >= 1; i --){if(mi[i - 1] > a[i])ans = max(ans, mi[i - 1] + a[i]);}//for(int i = 1; i <= n; i ++) cout << mi[i] << ' ';if(ans == -1) cout << "0" << endl;else cout << ans << endl;}return 0;
}

D

排序后寻找连续自然数的段数,答案就是段数-1
注意,当出现1 3 3 3 3 5 6 7,虽然自然数的段数为3,但是第二个段3 3 3 3前后都无绝对值之差为1的自然数,那么3 3 3 3的内部就需要互相连接才能保证与前后两个段内的数进行互相连通,则答案为3(段数) + 3(内部相连) - 1(三段只需要两条边即可互相连通)
对于1  3 4 4 4 6 7,其中的每一个4都可以借助3与1进行互相连通,也可以借助最后一个4与6进行互相连通

代码:

#include<bits/stdc++.h>using namespace std;//选用map的好处,可以记录当前数字的个数,也等于变相去重
map<int, int> mp;
int t;
int n;void solve()
{cin >> n;mp.clear();for(int i = 0; i < n; i ++){int x;cin >> x;mp[x] ++;}int ans = -1;for(auto & t : mp){int x = t.first, y = t.second;if(mp[x - 1] == 0)//当前数的前一个数不存在,则为一个单独的段,答案+1{ans ++;if(mp[x - 1] == 0 && mp[x + 1] == 0)//前后都不存在,则该数字内部需要互相连通ans += y - 1;}}cout << ans << endl;
}int main()
{ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);cin >> t;while(t -- )solve();return 0;
}

E

四种情况

1、只有两行全为1
2、只有两列全为1
3、一行一列全为1且交叉点为0
4、全为0

对上面四种情况分类讨论即可,列出了一些简单样例

代码:

#include<bits/stdc++.h>using namespace std;const int N = 1050;
int t;
map<int, int> mpx, mpy;//记录每行以及每列中1的个数
int a[N][N];void solve()
{int n, m, ans = 0;memset(a, 0, sizeof a);mpx.clear(), mpy.clear();cin >> n >> m;for(int i = 0; i < n; i ++){string ch;//注意输入格式,每行输入为字符串cin >> ch;for(int j = 0; j < ch.size(); j ++){a[i][j] = (ch[j] == '1'? 1: 0);if(a[i][j]){ans ++;//记录总体1的个数mpx[i] ++, mpy[j] ++;}}}bool st = true, sti = false, stj = false, stij = false;//若有两行满足全为1int mx = 0, my = 0, mxy = 0;for(int i = 0; i < n; i ++) if(mpx[i] == m)mx ++;//只有仅有两行全为1时才满足条件,则此时所有1的个数应等于两行1的个数sti = (mx == 2 && mx*m == ans ? true : false);//若有两列满足全为1for(int j = 0; j < m; j ++)if(mpy[j] == n)my ++;stj = (my == 2 && my*n == ans ? true : false);//同理int cnt = 0;//记录一行一列时1的个数for(int i = 0; i < n; i ++)for(int j = 0; j < m; j ++){if(a[i][j] == 1) st = false;if(mpx[i] == m - 1 && mpy[j] == n - 1 && a[i][j] == 0){mxy ++;cnt += mpx[i] + mpy[j];}}//仅有一行一列满足,无其他情况stij = (mxy == 1 && cnt == ans? true : false);//四类满足一种即可if(sti || stj || stij || st) puts("YES");else puts("NO");return;
}int main()
{ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);cin >> t;while(t -- )solve();return 0;
}

f等待补题ing

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

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

相关文章

【MCAL】TC397+EB-tresos之I2c配置实战(同步、异步)

I2C总线是Philips公司在八十年代初推出的一种串行、半双工的总线&#xff0c;主要用于近距离、低速的芯片之间的通信。本篇文章首先从理论讲起&#xff0c;介绍了英飞凌TC3x系列芯片对应MCAL中对I2C驱动的定义与介绍&#xff0c;建议读者在阅读本篇文章之前对I2C有个简单的认识…

深拷贝与浅拷贝:理解 Python 中的对象复制机制

深拷贝与浅拷贝&#xff1a;理解 Python 中的对象复制机制 在 Python 编程中&#xff0c;对象的复制是一个常见的操作。然而&#xff0c;很多初学者在处理对象复制时会遇到困惑&#xff0c;尤其是在涉及到复杂数据结构&#xff08;如列表、字典、自定义对象等&#xff09;时。…

BeanPostProcessor和AOP

BeanPostProcessor Spring中有一个接口Oredr的getOrder()方法&#xff0c;这个方法返回值是一个int类型&#xff0c;Spring容器会根据这个方法的返回值 对容器的多个Processor对象从小到大排序&#xff0c;创建Bean时候依次执行他们的方法&#xff0c;也就是说getOrder()方法的…

拒绝服务攻击(DoS/DDoS/DRDoS)详解:洪水猛兽的防御之道

在数字时代&#xff0c;服务的可用性是衡量一个在线系统成功与否的关键指标之一。然而&#xff0c;存在一类被称为"拒绝服务攻击" (Denial of Service, DoS) 的网络攻击&#xff0c;其主要目的就是通过各种手段耗尽目标服务器或网络的资源&#xff0c;使其无法响应正…

小刚说C语言刷题—1078求恰好使s=1+1/2+1/3+…+1/n的值大于X时n的值

1.题目描述 求恰好使 s11/21/3⋯1/n 的值大于 X 时 n 的值。( 2≤x≤10 ) 输入 输入只有一行&#xff0c;包括 1个整数 X 。 输出 输出只有一行&#xff08;这意味着末尾有一个回车符号&#xff09;&#xff0c;包括 1 个整数。 样例 输入 2 输出 4 2.参考代码(C语言…

深度学习中的目标检测:从 PR 曲线到 AP

深度学习中的目标检测&#xff1a;从 PR 曲线到 AP 在目标检测任务中&#xff0c;评估模型的性能是非常重要的。通过使用不同的评估指标和标准&#xff0c;我们可以量化模型的准确性与效果。今天我们将重点讨论 PR 曲线&#xff08;Precision-Recall Curve&#xff09;、平均精…

MySQL 1366 - Incorrect string value:错误

MySQL 1366 - Incorrect string value:错误 错误如何发生发生原因&#xff1a; 解决方法第一种尝试第二种尝试 错误 如何发生 在给MySQL添加数据的时候发生了下面的错误 insert into sys_dept values(100, 0, 0, 若依科技, 0, 若依, 15888888888, ryqq.com, 0,…

[ctfshow web入门] web70

信息收集 使用cinclude("php://filter/convert.base64-encode/resourceindex.php");读取的index.php error_reporting和ini_set被禁用了&#xff0c;不必管他 error_reporting(0); ini_set(display_errors, 0); // 你们在炫技吗&#xff1f; if(isset($_POST[c])){…

Linux在web下http加密和配置虚拟主机及动态页面发布

web服务器的数据加密 1.简介&#xff1a;由于http协议以明文方式发送&#xff0c;不提供任何方式的数据加密&#xff0c;也不适合传输一些重要的信息&#xff0c;如银行卡号、密码等&#xff0c;解决该缺陷设计了安全套接字层超文本传输协议https&#xff1b; 2.https的握手流…

uni-app,小程序中的addPhoneContact,保存联系人到手机通讯录

文章目录 方法详解简介 基本语法参数说明基础用法使用示例平台差异说明注意事项最佳实践 方法详解 简介 addPhoneContact是uni-app框架提供的一个实用API&#xff0c;用于向系统通讯录添加联系人信息。这个方法在需要将应用内的联系人信息快速保存到用户设备通讯录的场景下非…

NHANES稀有指标推荐:HALP score

文章题目&#xff1a;Associations of HALP score with serum prostate-specific antigen and mortality in middle-aged and elderly individuals without prostate cancer DOI&#xff1a;10.3389/fonc.2024.1419310 中文标题&#xff1a;HALP 评分与无前列腺癌的中老年人血清…

【django.db.utils.OperationalError: unable to open database file】

解决platform.sh 环境下&#xff0c;无法打开数据库问题 场景 在platform.sh 执行python manage.py createsuperuser是提示 django.db.utils.OperationalError: unable to open database file 错误 原因 由于settings.py文件中 本地数据库配置在线上配置后&#xff0c;导致…

【前端分享】CSS实现3种翻页效果类型,附源码!

使用 css 可以实现多种翻页效果&#xff0c;比如书本翻页、卡片翻转等。以下是两种常见的翻页效果实现&#xff1a; 效果 1&#xff1a;书本翻页效果 通过 transform 和 rotateY 实现 3D 翻页效果。 html 结构 <divclass"book"> <divclass"page pa…

【部署满血Deepseek-R1/V3】大型语言模型部署实战:多机多卡DeepSeek-R1配置指南

大家好&#xff01;这里是迪小莫学AI&#xff0c;今天的文章是“”大型语言模型部署实战&#xff1a;多机多卡DeepSeek-R1配置指南“” 前言 随着大型语言模型的快速发展&#xff0c;如何高效部署这些模型成为技术团队面临的重要挑战。本文将分享基于DeepSeek-R1模型的多机多…

IPM IMI111T-026H 高效风扇控制板

概述&#xff1a; REF-MHA50WIMI111T 是一款专为风扇驱动设计的参考开发板&#xff0c;搭载了英飞凌的IMI111T-026H iMOTION™智能功率模块(IPM)。这个模块集成了运动控制引擎(MCE)、三相栅极驱动器和基于IGBT的功率级&#xff0c;全部封装在一个紧凑的DSO22封装中。REF-MHA50…

Linux 阻塞和非阻塞 I/O 简明指南

目录 声明 1. 阻塞和非阻塞简介 2. 等待队列 2.1 等待队列头 2.2 等待队列项 2.3 将队列项添加/移除等待队列头 2.4 等待唤醒 2.5 等待事件 3. 轮询 3.1 select函数 3.2 poll函数 3.3 epoll函数 4. Linux 驱动下的 poll 操作函数 声明 本博客所记录的关于正点原子…

互联网SQL面试题:用户会话时长分析

这是一个基于用户点击信息进行会话时长分析的案例&#xff0c;常见于互联网 App 使用分析。 问题描述 用户的访问记录存储在 user_access 表中&#xff0c;包含用户编号&#xff08;user_id&#xff09;以及访问时间&#xff08;access_time&#xff09;等信息。以下是一个示…

前端取经路——现代API探索:沙僧的通灵法术

大家好,我是老十三,一名前端开发工程师。在现代Web开发中,各种强大的API就像沙僧的通灵法术,让我们的应用具备了超乎想象的能力。本文将带你探索从离线应用到实时通信,从多线程处理到3D渲染的九大现代Web API,让你的应用获得"通灵"般的超能力。 在前端取经的第…

window 显示驱动开发-AGP 类型伸缩空间段

AGP 类型的伸缩空间段类似于线性光圈空间段。 但是&#xff0c;内核模式显示微型端口驱动程序&#xff08;KMD&#xff09;不会通过 AGP 类型的伸缩空间段公开 dxgkDdiBuildPagingBuffer 回调函数的DXGK_OPERATION_MAP_APERTURE_SEGMENT和DXGK_OPERATION_UNMAP_APERTURE_SEGMEN…

从零开始学习three.js(15):一文详解three.js中的纹理映射UV

1. UV 映射基础概念 1.1 什么是 UV 坐标&#xff1f; 在三维计算机图形学中&#xff0c;UV 坐标是将二维纹理映射到三维模型表面的坐标系统。UV 中的 U 和 V 分别代表2D纹理空间的水平&#xff08;X&#xff09;和垂直&#xff08;Y&#xff09;坐标轴&#xff0c;与三维空间…