AtCoder Beginner Contest 416(2025.7.26)

文章目录

  • A Vacation Validation
  • B 1D Akari(补)
  • C Concat (X-th)(补)
    • 题目考查
    • 题意简述
    • 解法思路 :
    • AC代码
  • D Match, Mod, Minimize 2(补)
    • 题目分数/评级
    • 题目考查
    • 时间复杂度
    • 题意简述
    • 解法思路 :
    • AC代码
  • 总结


前言
补题记录+题解
赛时过的题就不写题解了,没过的写写题解。
做题情况:

  • AtCoder Beginner Contest 416(2025.7.26)
    现场完成:A题
    赛后补题:B/C题

题目传送门

A Vacation Validation

#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){int n,l,r;cin>>n>>l>>r;string s;cin>>s;int f=1;for(int i=l-1;i<r;i++){if(s[i]!='o'){f=0;break;}}if(f) cout<<"Yes"<<endl;else cout<<"No"<<endl;return 0;
}

B 1D Akari(补)

//思路:从左到右遍历,记一个f初始为1,遇到非'#'的位置且f=1可以填'o',然后f=0,否则遇到'#'则f=1。 
#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){string s;cin>>s;int l=s.size();bool f=true;for(int i=0;i<l;i++){if(s[i]!='#'){if(f){s[i]='o';f=false;}else s[i]='.';}else f=true;}cout<<s<<endl;return 0;
}

C Concat (X-th)(补)

题目考查

递归

题意简述

给定N个字符串S1,…,SN​构造长度为K(K已知)的序列A1,…,AK,定义字符串f(A1​,…,AK​)为SA1+SA2+⋯+SAK(此处+表示字符串连接操作)
当所有NK个序列对应的f(A1​,…,AK​)按字典序排序后,请找出其中第X小的字符串。

解法思路 :

因为数据范围不大,所以递归模拟一遍所有排列方式,再排个序就行。

AC代码

//递归 
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=15;
int n,k,x;
vector<string> s(N),t;void f(int num,string ss){if(num==k+1){t.push_back(ss);return ;}for(int i=0;i<n;i++) f(num+1,ss+s[i]);
}signed main(){cin>>n>>k>>x;for(int i=0;i<n;i++) cin>>s[i];f(1,"");sort(t.begin(),t.end());//字典序排序cout<<t[x-1]<<endl;return 0;
}

D Match, Mod, Minimize 2(补)

题目分数/评级

400分

题目考查

双指针

时间复杂度

O(nlogn)
原因:

  • 输入:O(n)
  • sort遍历;nlogn
  • 双指针:O(n)(原因:j没回退)
  • 输出:O(1)

题意简述

给两个长度均为n的无序数组a和b,给定一个正整数m,要求重排a数组之后,求∑​(1到n)((ai​+bi​)mod m)的最小值

  • 0≤ai​,bi​< m

解法思路 :

由题给的范围可知,(ai+bi)%m等价于ai+bi-m ,整体看起来,∑​(1到n)((Ai​+Bi​)modM)等价于 ∑​(1到n)(((ai​+bi)-m*k)。想要结果最小,只需要让k尽可能大就行。即只需要让ai+bi>=m的组合尽可能多就行
步骤:

  • 分别存入a和b并排序
  • 用双指针遍历a和b,一个从a的头一个从b的尾,寻找ai+bi>=m的数量,并k++
  • 输出∑​(1到n)(ai​+bi​)-k*m即可

AC代码

//思路:(ai+bi)%M->ai+bi-M 
#include<bits/stdc++.h>
using namespace std;
#define int long longsigned main(){int T;cin>>T;while(T--){int n,m,sum=0;cin>>n>>m;vector<int> a(n+1),b(n+1);for(int i=1;i<=n;i++){//存入 cin>>a[i];sum+=a[i];}for(int i=1;i<=n;i++){cin>>b[i];sum+=b[i];}sort(a.begin(),a.end());sort(b.begin(),b.end());//		for(int i=1;i<=n;i++) cout<<a[i]<<" ";
//		cout<<endl;
//		for(int i=1;i<=n;i++) cout<<b[i]<<" ";
//		cout<<endl;int k=0;for(int i=n,j=1;j<=n&&i>=1;i--){//双指针while(j<=n&&a[i]+b[j]<m) j++;if(j>n) break;k++,j++;}cout<<sum-(k*m)<<endl;}return 0;
}

总结

记录一个菜鸡的成长——如有疏漏欢迎指正

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

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

相关文章

基于 Hadoop 生态圈的数据仓库实践 —— OLAP 与数据可视化(五)

目录 五、Hue、Zeppelin 比较 1. Zeppelin 简介 2. Zeppelin 安装配置 &#xff08;1&#xff09;安装环境 &#xff08;2&#xff09;Zeppelin 及其相关组件 &#xff08;3&#xff09;配置 Zeppelin &#xff08;4&#xff09;启动 Zeppelin &#xff08;5&#xff0…

《消息队列学习指南:从 MQ 基础到 SpringAMQP 实践》

初识MQ 同步调用 目前我们采用的是基于OpenFeign的同步调用&#xff0c;也就是说业务执行流程是这样的&#xff1a; 支付服务需要先调用用户服务完成余额扣减 然后支付服务自己要更新支付流水单的状态 然后支付服务调用交易服务&#xff0c;更新业务订单状态为已支付 三个…

深度学习 --- 过拟合与欠拟合

深度学习 — 过拟合与欠拟合 文章目录深度学习 --- 过拟合与欠拟合一.概念1.1 过拟合1.2 欠拟合1.3 判断方式二&#xff0c;解决欠拟合三&#xff0c;解决过拟合3.1 L2正则化3.1.1 定义以及作用3.1.2 代码3.2 L1正则化3.3 L1与L2对比3.4 Dropout示例3.5 数据增强3.5.1 图片缩放…

Python 之抽象方法 @abstractmethod 的理解

如果你熟悉 Java 的话&#xff0c;Java 里有一个抽象接口的概念&#xff0c;Python 里的抽象方法基本上与其类似。在 Python 中&#xff0c;abstractmethod 是一个装饰器&#xff0c;用于定义抽象方法。它是实现抽象基类&#xff08;Abstract Base Class, ABC&#xff09;的核心…

深度学习·pytorch

广播机制 从末尾开始逐个维度遍历两个矩阵的shape&#xff0c;如果维度不相同&#xff0c;则考虑广播&#xff1a;任一方的维度为1或者维度不存在(小矩阵广播为大矩阵)&#xff0c;这样的运算可以广播 可以广播的例子 xtorch.empty(5,3,4,1) ytorch.empty(3,1,1) (x.add_(y)).s…

SpringBoot集成deepseek

pom文件&#xff1a;<?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org…

JetBrains Annotations:从入门到落地,彻底告别 NullPointerException

本文基于三篇高质量博客&#xff08;JetBrains Annotations官方文档、Jakarta Validation 规范、《Effective Java》第3版&#xff09;的原文内容&#xff0c;结合作者在一线研发团队落地 JetBrains Annotations 的实战经验&#xff0c;系统梳理了该注解库的核心能力、使用姿势…

基于Rust与HDFS、YARN、Hue、ZooKeeper、MySQL

基于Rust与HDFS、YARN、Hue、ZooKeeper、MySQL集合 以下是基于Rust与HDFS、YARN、Hue、ZooKeeper、MySQL等技术栈结合的实例,涵盖不同场景和应用方向: 数据处理与分析 使用Rust编写MapReduce作业,通过YARN提交到HDFS处理大规模数据集。Rust的高性能特性适合处理密集型计算…

芯片上市公司正在放弃射频业务

转载自--钟林谈芯射频芯片赛道本来不卷的&#xff0c;投资人多了也就卷了。本周&#xff0c;多家媒体报道某芯片上市公司终止射频业务&#xff0c;终止射频业务的何止一家芯片上市公司&#xff0c;从去年开始就逐渐有上市公司终止射频业务&#xff0c;开启清货模式。如人饮水&a…

Jmeter 性能测试监控之ServerAgent

使用 Jmeter 对 Linux 服务器的进行压测时&#xff0c;想要监控服务器的 CPU 、内存&#xff0c;可以通过添加插件 【ServerAgent】来观察,可以实时监控性能指标 一、ServerAgent-2.2.3下载 下载地址&#xff1a; GitCode - 全球开发者的开源社区,开源代码托管平台 二、通过插…

5.苹果ios逆向-过ssl证书检测和安装ssh和获取root权限

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;图灵Python学院 工具下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1bb8NhJc9eTuLzQr39lF55Q?pwdzy89 提取码&#xff1…

Navicat 17 教程:Windows 和 Mac 系统适用

一、引言 对于程序员们来说&#xff0c;Navicat是一款极为实用的数据库管理工具。Navicat 17更是带来了诸多新特性&#xff0c;能大大提升我们的工作效率。今天就为大家带来Navicat 17在Windows和Mac系统上的使用教程。 二、准备工作 &#xff08;一&#xff09;下载安装包 「…

Android 中 实现柱状图自定义控件

一、基本思路 创建自定义控件的数据模型; 创建一个自定义 View 类,继承自 View; 在初始化方法中获取自定义属性的值。 创建设置数据方法,将数据模型列表转换成自定义绘制时的数据; 重写 onDraw 方法,以实现自定义的绘制逻辑。 二、主要绘制方法 1、drawLine 绘制直线 p…

Netty 核心原理与实战:从 DiscardServer 看透 Reactor 模式与组件协作

目录 Netty 是什么&#xff1f; Netty 的目标 Netty 实战案例 DiscardServer 服务端程序 NettyDiscardServer 业务处理器 NettyDiscardHandler 配置类 NettyDemoConfig 回顾 Reactor 模式中的 IO 事件处理流程 Netty 中的 Channel Netty 中的 Reactor Netty 中的 Han…

关于“LoggerFactory is not a Logback LoggerContext but Logback is on ......“的解决方案

​ ✨重磅&#xff01;盹猫的个人小站正式上线啦&#xff5e;诚邀各位技术大佬前来探秘&#xff01;✨ 这里有&#xff1a; 硬核技术干货&#xff1a;编程技巧、开发经验、踩坑指南&#xff0c;带你解锁技术新姿势&#xff01;趣味开发日常&#xff1a;代码背后的脑洞故事、工具…

2025年6月电子学会青少年软件编程(C语言)等级考试试卷(三级)

答案和更多内容请查看网站&#xff1a;【试卷中心 -----> 电子学会 ----> C/C ---->三级】 网站链接 青少年软件编程历年真题模拟题实时更新 编程题 第 1 题 打印城门 题目描述 给定一个正整数 n&#xff0c;输出如下的星号城门。具体格式请见样例。 输入格…

跨平台直播美颜SDK开发指南:兼顾性能与美型效果的最佳实践

面对iOS、Android乃至Web等多端应用需求&#xff0c;如何开发一款真正跨平台、兼顾性能与美型效果的美颜SDK&#xff0c;成为众多开发团队和产品经理的一道必答题。 今天笔者这篇文章&#xff0c;就从架构设计、性能优化、视觉效果调校三个关键维度&#xff0c;带你深入解析跨平…

2025数字藏品安全保卫战:高防CDN如何成为NFT应用的“隐形护甲”?

副标题&#xff1a; 从DDoS防御到全球加速&#xff0c;拆解数字资产平台的生死防线&#x1f310; 引言&#xff1a;当数字藏品成为黑客的“头号靶场”2025年全球数字藏品市场突破$1000亿&#xff0c;但安全事件同步激增230%——某头部NFT平台因3.2Tbps DDoS攻击瘫痪&#xff0c…

linux 执行sh脚本,提示$‘\r‘: command not found

1、在Linux下执行某个脚本文件却提示$\r: command not found&#xff0c;如下图:2、错误原因:a、 Windows 风格的换行符&#xff1a;Windows 系统使用 \r\n 作为行结束符&#xff0c;而 Linux 和 Unix 系统使用 \n。当你从 Windows 环境中复制文本到 Linux 环境时&#xff0c;可…

使用HaiSnap做了一款取件码App(一键生成)

你是否怀揣着奇思妙想&#xff0c;却因不懂代码而对开发应用望而却步&#xff1f;现在&#xff0c;有一个神奇AI Agent&#xff08;响指HaiSnap&#xff09;&#xff0c;一个响指就能实现&#xff0c;你说神奇不&#xff1f;只需要一句话就可以生成你想要的应用&#xff01;让你…