AtcoderABC243场

A - Shampoo A - Shampoo ]

在这里插入图片描述在这里插入图片描述

题目大意

高桥家有三个人:高桥、他的父亲和他的母亲。每个人每晚都在浴室洗头发。他们按照顺序使用AA、BB和CC毫升的洗发水。
问,今天早上瓶子里有VV毫升的洗发水。在不重新装满的情况下,谁会第一个用完洗发水洗头?

思路分析

可以使用循环来模拟每个人使用洗发水洗发的过程,并判断是否剩余足够的洗发水供下一个人使用。如果某个人发现剩余的洗发水不够用了,则输出对应的标记。

时间复杂度

O(1)

可AC代码

#include <iostream>
using namespace std;int main() {int V, A, B, C;cin >> V >> A >> B >> C;while(true) {if(V < A) { cout << "F" << endl;break; }V -= A;if(V < B) { cout << "M" << endl; break; }V -= B; if(V < C) { cout << "T" << endl; break; }V -= C; }return 0;
}

B - Hit and BlowB - Hit and Blow

在这里插入图片描述在这里插入图片描述在这里插入图片描述

题目大意

题目要求给定两个长度为N的整数序列A和B,找出满足以下条件的整数个数:

  • 在序列A和序列B中相同位置上的整数个数;
    *在序列A和序列B中不同位置上但数值相等的整数对个数。

思路分析

可以使用两个unordered_map来记录序列A和序列B中每个整数的出现位置。然后,遍历序列A的每个元素,分别在序列A和序列B中查找该元素的出现位置。根据题目要求,如果出现位置相同,则符合条件1;如果出现位置不同,则符合条件2。

时间复杂度

O(N)

可AC代码

#include <iostream>
#include <vector>
#include <unordered_map>using namespace std;void solve() {int n;cin >> n;vector<int> A(n);vector<int> B(n);for (int i = 0; i < n; i++) {cin >> A[i];}for (int i = 0; i < n; i++) {cin >> B[i];}unordered_map<int, vector<int>> mpa;unordered_map<int, vector<int>> mpb;int a = 0;int b = 0;for (int i = 0; i < n; i++) {mpa[A[i]].push_back(i);}for (int i = 0; i < n; i++) {mpb[B[i]].push_back(i);}for (int val : A) {for (int i : mpa[val]) {for (int j : mpb[val]) {if (i == j) {a++;} else {b++;}}}}cout << a << endl;cout << b << endl;
}int main() {solve();return 0;
}

C - Collision 2C - Collision 2

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

题目大意

给出一组人的位置和朝向,问是否会有人在继续行走时发生碰撞。

思路分析

1.读取输入,保存每个人的位置和朝向。
2.使用map来按照纵坐标将人进行分组,并按照横坐标排序。
3.对于每个纵坐标的人群,检查是否有面朝左的人在面朝右的人之后出现,如果是,则说明会发生碰撞。
4.最后根据是否发生碰撞输出结果。

这是一道简单的模拟问题,按照题目的要求将人进行分组,并对每个纵坐标的人进行排序。然后检查是否有面朝左的人在面朝右的人之后出现,根据这一条件判断是否会发生碰撞。
由于输入规模较大,可以使用map来存储每个纵坐标对应的人的信息,以保证按照纵坐标的升序进行遍历。同时,在判断是否碰撞时,可以使用两个布尔变量m和p来分别表示是否出现面朝左的人和面朝右的人,通过这两个变量的状态来判断是否会发生碰撞。

时间复杂度

O(NlogN + M)

可AC代码

#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;int main() {int n;cin >> n;map<int, vector<pair<int, int>>> mp;vector<int> x(n), y(n);for (int i = 0; i < n; i++) {cin >> x[i] >> y[i];}string s;cin >> s;for (int i = 0; i < n; i++) {if (s[i] == 'L') {mp[y[i]].push_back(make_pair(x[i], -1));} else {mp[y[i]].push_back(make_pair(x[i], 1));}}for (auto it = mp.begin(); it != mp.end(); it++) {sort(mp[it->first].begin(), mp[it->first].end());bool m = false, p = false;for (int i = 0; i < mp[it->first].size(); i++) {if (mp[it->first][i].second == 1) {p = true;}if (mp[it->first][i].second == -1 && p) {m = true;}}if (m) {cout << "Yes" << endl;return 0;}}cout << "No" << endl;return 0;
}

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

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

相关文章

网工内推 | 美图秀秀招网工,大专以上,15薪,NP认证优先

01 美图公司 招聘岗位&#xff1a;网络工程师 职责描述&#xff1a; 1、美图大厦网络、分公司网络、IT相关项目的网络、办公内网服务器&#xff1b; 2、负责网络的设计、运行、管理和维护等工作&#xff1b; 3、负责远程办公环境的优化、运行、管理和维护工作&#xff1b; 4、…

为什么低代码只能掀起小浪花?了解低代码的得失与前景

导语&#xff1a;低代码是相对于高代码和无代码的一个中间概念&#xff0c;通常强调的是用户不需要学习如何写代码&#xff0c;就能完成工作。然而低代码模式一直不温不火&#xff0c;原因是什么呢&#xff1f;一起来看一下吧。 最近互联网大公司裁员消息又起&#xff0c;“低代…

Linux: cannot read file data

报错&#xff1a; Could not load library libcudnn_cnn_infer.so.8. Error: /home/qc/miniconda3/envs/DNAqc/lib/python3.10/site-packages/torch/lib/libcudnn_cnn_infer.so.8: cannot read file data Please make sure libcudnn_cnn_infer.so.8 is in your library path! A…

【NLP】国外新动态--LLM模型

一、说明 NLP走势如何?这是关于在实践中使用大型语言模型(LLM)的系列文章中的一篇文章。在这里,我将介绍LLM,并介绍使用它们的3个级别。未来的文章将探讨LLM的实际方面,例如如何使用OpenAI的公共API,Hugging Face Transformers Python库,如何微调LLM,以及如何从头开始…

navicate_windows_14

1.新建文本文档2.输入如下内容 echo off set dnInfo set dn2ShellFolder set rpHKEY_CURRENT_USER\Software\Classes\CLSID :: reg delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Registration14XCS /f %针对<strong><font color"#FF0000"…

华为产品测评官-开发者之声 - ModelArts 真实体验感想

华为产品测评官&#xff0d;开发者之声 - ModelArts 真实体验感想 我先是在6月17日参加了华为在深圳举办的开发者大会&#xff0c;后面看到群里发的"2023华为产品测评官&#xff0d;开发者之声"活动&#xff0c;简单看了一下体验活动的具体事情&#xff0c;感觉好玩…

【005】基于深度学习的图像语 通信系统

摘要 语义通信是一种新颖的通信方式&#xff0c;可通过传输数据的语义信息提高带宽效率。提出一种用于无线图像传输的系统。该系统基于深度学习技术开发并以端到端&#xff08;E2E&#xff09;的方式进行训练。利用深度学习实现语义特征的提取和重建&#xff0c;在发送端提取信…

异步fifo(1)

什么时异步fifo FIFO&#xff0c;即First In First Out &#xff0c;是一种先进先出的数据缓存器&#xff0c;异步FIFO 是指读写时钟不一致&#xff0c;读写时钟是互相独立的。数据从一个时钟域写入FIFO缓冲区&#xff0c;并从另一个时钟域的同一FIFO缓冲区中读取数据&#xf…

CSS 伪元素: ::marker 自定义列表序号

::marker 伪元素 ::marker&#xff0c;可作用在任何设置了 display: list-item 的元素或伪元素上&#xff0c;例如<li>和<summary>。 /** <ul><li>Peaches</li><li>Apples</li><li>Plums</li> </ul> */ ul li::…

uni-app做h5IOS底部tabbar高度在不同的tabbar页面会忽高忽低

原因不祥&#xff0c;解决办法的话在App.vue中 <style langscss> //每个页面公共css page { height:100vh; } </style>

【hadoop】HDFS

HDFS 操作HDFSWeb Console 网页工具操作NameNode操作SecondaryNameNode 命令行Java API HDFS的原理解析数据上传的过程数据下载的过程 HDFS的高级特性回收站配额Quota名称配额空间配额 快照Snapshot安全模式 SafeMode权限管理&#xff1a;类似LinuxHDFS的集群 HDFS的底层原理&a…

软件测试行业的困境和迷局

中国的软件测试虽然起点较高&#xff0c;但是软件测试的发展似乎没有想象中那么顺利。 其实每个行业除了有自身领域外&#xff0c;还有属于自己的“生态系统”。属于软件测试的生态系统主要包括后备软件测试人员、软件开发人员和软件管理决策者。后备软件测试人员是软件测试的…

微服务保护——Sentinel【实战篇】

一、限流规则&#x1f349; 1.簇点链路&#x1f95d; 簇点链路&#xff1a;就是项目内的调用链路&#xff0c;链路中被监控的每个接口就是一个资源。默认情况下sentinel会监控SpringMVC的每一个端点&#xff08;Endpoint&#xff09;&#xff0c;因此SpringMVC的每一个端点&a…

excel文件导入或导出Java代码示例

1、excel文件导入 controller层接口内容 service层代码 serviceImpl内代码内容 OverrideTransactional(rollbackFor Exception.class)public void importCheckItemExcel(MultipartFile file, Long checkPkgId) throws Exception {if (file.isEmpty()){throw new IOException(…

Java 中 synchronized 的优化操作:锁升级、锁消除、锁粗化

由 并发编程中常见的锁策略 总结可知&#xff0c;synchronized 具有以下几个特性&#xff1a; 开始时是乐观锁&#xff0c;如果锁冲突频繁&#xff0c;就转换为悲观锁。开始是轻量级锁实现&#xff0c;如果锁被持有的时间较长&#xff0c;就转换成重量级锁。实现轻量级锁时&am…

Spring Cloud Alibaba【Nacos配置动态刷新、Nacos集群架构介绍 、Nacos的数据持久化、认识分布式流量防护 】(五)

目录 分布式配置中心_Nacos配置动态刷新 分布式配置中心_Dubbo服务对接分布式配置中心 分布式配置中心_Nacos集群架构介绍 分布式配置中心_Nacos的数据持久化 分布式配置中心_Nacos集群配置 分布式流量防护_认识分布式流量防护 分布式流量防护_认识Sentinel 分布式配置…

pycharm里debug时torch数组显示不全

pycharm里查看torch数组全部值 一、在Pycharm运行torch数组时&#xff0c;通常只能看到数组的一部分二、解决办法1、debug后&#xff0c;鼠标右键想要查看完整的数组&#xff0c;选择Evaluate Expression2、输入np.array(x0.data)&#xff0c;x0为想要查看的数组名&#xff0c;…

在Linux下做性能分析1:基本模型

介绍 本Blog开始介绍一下在Linux分析性能瓶颈的基本方法。主要围绕一个基本的分析模型&#xff0c;介绍perf和ftrace的使用技巧&#xff0c;然后东一扒子&#xff0c;西一扒子&#xff0c;逮到什么说什么&#xff0c;也不一定会严谨。主要是把这个领域的一些思路和技巧串起来。…

Flutter悬浮UI的设计Overlay组件

文章目录 APP开发经常要遇到的开发场景Overlay 的介绍Overlay的使用规则举例说明源码例子报错报错No Overlay widget found报错原因解决方法 修改后的源码 例子效果 APP开发经常要遇到的开发场景 有时候我们在开发APP的时候会遇到下面这些需求&#xff1a; 在现有页面上添加浮…

代码随想录算法训练营第十九天 | 动态规划系列5,6,7,8

动态规划系列5,6,7,8 377 组合总和 Ⅳ未看解答自己编写的青春版重点代码随想录的代码我的代码(当天晚上理解后自己编写)求排列数的题&#xff0c;用二维DP过不了&#xff1f;自己捋逻辑的话&#xff0c;也是可以觉得有漏洞&#xff0c;但是怎么修改&#xff0c;一下子还没思路&…