Codeforces Round 799 (Div. 4)
目录
A. Marathon
B. All Distinct
C. Where’s the Bishop?
D. The Clock
E. Binary Deque
F. 3SUM
G. 2^Sort
H. Gambling
A. Marathon
直接模拟
void solve()
{int ans=0;for(int i=1;i<=4;i++) {cin>>a[i];if(i>1&&a[i]>a[1]) ans++;}cout<<ans<<endl;return ;
}
B. All Distinct
把重复的数删除然后判断是不是删的偶数个不是就再减去一个即可
void solve()
{cin>>n;vector<int> a;for(int i=1;i<=n;i++){int x; cin>>x;a.push_back(x);}sort(a.begin(),a.end());a.erase(unique(a.begin(),a.end()),a.end());int now=n-a.size();cout<<(now%2==0 ? a.size() : a.size()-1)<<endl;return ;
}
C. Where’s the Bishop?
简单的八皇后行列的性质,也就是副对角线的是行列之和相等,主对角线是差值相等需要加上n防止越界,接着谁所在的行列之和最大谁就是king
char a[M][M];
int d[M],ud[M];
void solve()
{n=m=8;memset(d,0,sizeof d);memset(ud,0,sizeof ud);for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[i][j];if(a[i][j]=='#'){d[i+j]++;ud[8-i+j]++;}}}int x=0,y=0,ma=0;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(d[i+j]+ud[8-i+j]>ma){ma=d[i+j]+ud[8-i+j];x=i,y=j;}}}cout<<x<<" "<<y<<endl;return ;
D. The Clock
简单模拟即可,我们发现这一类题目都是数据范围很小 我们可以先装为总的分钟再来变化即可用mp记录是否出现过
map<PII,int> mp;
void solve()
{string s; cin>>s>>m;h=(s[0]-'0')*10+s[1]-'0';n=(s[3]-'0')*10+s[4]-'0';mp.clear();int hh=m/60,mm=m-hh*60;int ans=0;while(1){if(mp[{h,n}]) break;mp[{h,n}]++;string x,y;int xx=h,yy=n;while(xx){x+=xx%10+'0';xx/=10;}while(yy){y+=yy%10+'0';yy/=10;}if(h<10) x+='0';if(n<10) y+='0';reverse(x.begin(),x.end());if(x==y) ans++;h+=hh,n+=mm;if(n>=60) n-=60,h++;if(h>=24) h-=24;}cout<<ans<<endl;return ;
}
E. Binary Deque
简单性质使用 要删除的最少也就是留下的最多我们可以考虑使用双指针,如果后面多了一定要删去前面的
void solve()
{cin>>n>>m;int sum=0;for(int i=1;i<=n;i++) cin>>a[i],sum+=a[i];if(sum<m) cout<<-1<<endl;else{sum=0;int ans=0;for(int i=1,j=1;i<=n;i++){sum+=a[i];while(sum>m){sum-=a[j];j++;}if(sum==m) ans=max(ans,i-j+1);}cout<<n-ans<<endl;}return ;
}
F. 3SUM
考虑到我们只需要看最后一个位置所以我们只需要把每一个数的最后一位取出来即可然后直接
暴力即可
int a[10];
void solve()
{cin>>n;memset(a,0,sizeof a);for(int i=1;i<=n;i++){int x; cin>>x;a[x%10]++;}for(int i=0;i<=9;i++){for(int j=0;j<=9;j++){for(int k=0;k<=9;k++){if(i==j&&j==k&&a[i]<3) continue;if(i==j&&a[i]<2) continue;if(i==k&&a[i]<2) continue;if(j==k&&a[j]<2) continue;if(!a[i]||!a[j]||!a[k]) continue;if((i+j+k)%10==3){cout<<"YES"<<endl;return ;}}}}cout<<"NO"<<endl;return ;
}
G. 2^Sort
我们发现变化的其实之后后面一个数多乘以2了后面也是一样的就判断 是否满足即可如果不满足重新开始,双指针算法
int a[N];
void solve()
{cin>>n>>m;for(int i=1;i<=n;i++) cin>>a[i];int ans=0,len=1;for(int i=2;i<=n;i++){if(a[i]*2>a[i-1]) len++;else{if(len>m) ans+=len-m;len=1;}} if(len>m) ans+=len-m;cout<<ans<<endl;return ;
}
H. Gambling
我们发现其实只需要对每一个数来判断即可我们也就是求一个数的区间的数量减去其他数的数量,
我们可以把这个数看成1,其它的数就是-1来计算贡献来维护一个前缀最小的即可
void solve()
{cin>>n;map<int,set<PII>> mp;int res=0,a=0,l=0,r=0;for(int i=1;i<=n;i++){int x; cin>>x;int sum=2*mp[x].size()-i;mp[x].insert({sum-1,i});// auto it=*mp[x].begin();if(sum-it.first>res){res=sum-it.first;a=x;l=it.second;r=i;}}cout<<a<<" "<<l<<" "<<r<<endl;
}
相关文章:
Codeforces Round 799 (Div. 4)
目录 A. Marathon B. All Distinct C. Where’s the Bishop? D. The Clock E. Binary Deque F. 3SUM G. 2^Sort H. Gambling A. Marathon 直接模拟 void solve() {int ans0;for(int i1;i<4;i) {cin>>a[i];if(i>1&&a[i]>a[1]) ans;}cout<&l…...
为什么要用云手机养tiktok账号
在拓展海外电商市场的过程中,许多用户选择采用tiktok短视频平台引流的策略,以提升在电商平台上的流量,吸引更多消费者。而要进行tiktok引流,养号是必不可少的一个环节。tiktok云手机成为实现国内跨境养号的一种有效方式࿰…...
vue pc端网页实现自适应
一、基本原理 pc端做自适应可以用rem来实现,啥是rem,自己百度 二、新建rem.ts文件 // rem等比适配配置文件 // 基准大小 const baseSize 14 // 设置 rem 函数 function setRem () {// 当前页面宽度相对于 1920宽的缩放比例,可根据自己需要…...
Android 13以上版本读写SD卡权限适配
如题,最近工作上处理的问题,把解决方案简单逻列出来,供有需要的朋友参考之 解决方案: 1、配置权限 <uses-permission android:name"android.permission.READ_MEDIA_IMAGES" /><uses-permission android:name&q…...
并查集模板:食物链详解
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main {static int N 50010;static int n,m; //n个动物,m局判断static int[] p new int[N]; //p[i]是i的根节点static int[] d new int[N]; //d[i]表示i到…...
使用WAF防御网络上的隐蔽威胁之反序列化攻击
什么是反序列化 反序列化是将数据结构或对象状态从某种格式转换回对象的过程。这种格式通常是二进制流或者字符串(如JSON、XML),它是对象序列化(即对象转换为可存储或可传输格式)的逆过程。 反序列化的安全风险 反…...
05. 交换机的基本配置
文章目录 一. 初识交换机1.1. 交换机的概述1.2. Ethernet_ll格式1.3. MAC分类1.4. 冲突域1.5. 广播域1.6. 交换机的原理1.7. 交换机的3种转发行为 二. 初识ARP2.1. ARP概述2.2. ARP报文格式2.3. ARP的分类2.4. 免费ARP的作用 三. 实验专题3.1. 实验1:交换机的基本原…...
yolo将标签数据打到原图上形成目标框
第一章 目标:为了查看自己在标注标签时是否准确,写了这段代码来将标注的框打到原图上 第二章 步骤:进行反归一化得到坐标画出矩形框 第二行是目标图片对应的txt,第三行是目标图片 第三章 全部代码如下: import cv2 import …...
002-00-02【大红ai源码】dolphinscheduler3.2.0 源码环境搭建------by孤山村头王大爷家女儿大红
【ai阅读源码-dolphinscheduler】 DolphinScheduler 开发手册1、软件要求2、克隆代码库3、编译打包4、代码风格5、新建数据库,导入元数据。6, 启动后端6.1 启动api-server 6.2 启动master-server6.3 启动worker-server 7 启动前端 DolphinScheduler 开发…...
python-自动化篇-运维-监控-如何使⽤Python处理和解析⽇志⽂件?-实操记录
文章目录 1. 选择日志文件格式: 确定要处理的日志文件的格式。不同的日志文件可能具有不同的格式,如文本日志、CSV、JSON、XML等。了解日志文件的格式对解析⾮常重要。2. 打开日志文件: 使⽤Python的文件操作功能打开日志文件,以便…...
代码随想录算法训练营DAY6 | 哈希表(1)
DAY5休息一天,今天重启~ 哈希表理论基础:代码随想录 Java hash实现 :java 哈希表-CSDN博客 一、LeetCode 242 有效的字母异位词 题目链接:242.有效的字母异位词 思路:设置字典 class Solution {public boolean isAnag…...
【嵌入式学习】C++QT-Day3-C++基础
笔记 见我的博客:https://lingjun.life/wiki/EmbeddedNote/19Cpp 作业 设计一个Per类,类中包含私有成员:姓名、年龄、指针成员身高、体重,再设计一个Stu类,类中包含私有成员:成绩、Per类对象p1,设计这两个类的构造函…...
表贴式PMSM的直接转矩控制(DTC)MATLAB仿真模型
微❤关注“电气仔推送”获得资料(专享优惠) 模型简介 表贴式PMSM的直接转矩控制(DTC),直接使用滞环控制对转矩和磁链进行控制,相对于传统的FOC控制而言,其不需要进行解耦变换,在此次的有以下几点需要注意:…...
详解OpenHarmony各部分文件在XR806上的编译顺序
大家好,今天我们来谈一谈编程时一个很有趣的话题——编译顺序。我知道,一提到编译可能大家会感到有点儿头疼,但请放心,我不会让大家头疼的。我们要明白,在开始写代码之前,了解整个程序的编译路径是十分有必…...
【美团】无人机-大数据开发工程师
更新时间:2024/01/29 工作地点:北京市 事业群:到家事业群 工作经验:3年 部门介绍 为了更好地提升城市即时配送的效率与体验,美团于2017年启动了无人机配送服务的探索,通过科技创新推动履约工具变革&#x…...
微服务系统设计:横向扩展和纵向扩展的对比
微服务扩展性:水平扩展 vs 垂直扩展 特点水平扩展垂直扩展扩展单位增加微服务实例增加单个实例的资源 (CPU,内存)方向向外,增加节点向上,增加单个节点的资源复杂性随着实例数量的增加,管理难度更大管理更简单…...
Java基于SpringBoot+Vue的网上超市管理系统
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…...
HTTP中POST、GET、PUT、DELETE方式的区别
GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作&#x…...
77.Go中interface{}判nil的正确姿势
文章目录 一:interface{}简介二、interface{}判空三:注意点四:实际案例 一:interface{}简介 在go中的nil只能赋值给指针、channel、func、interface、map或slice类型的变量 interface 是否根据是否包含有 method,底层…...
ES实战回顾
1、你用的集群节点情况? 一个ES集群,18个节点,其中3个主节点,15个数据节点,500G左右的索引数据量,没有单独的协调节点,它的每个节点都可以充当协调功能; 2、你们常用的索引有哪些&a…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
