AtcoderABC228场

A - On and OffA - On and Off

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

题目大意

一个人每天在指定的时间点打开房间的灯,并在另一个时间点关闭灯。问题是确定在给定的时间点,灯是否亮着。

思路分析

注意时间24小时制,同一天和隔夜两种情况
确定给定的时间点是否在灯亮的时间范围内。根据题目给出的约束条件,可以使用以下逻辑来判断:

同一天:如果 s 小于等于 x 并且 x 小于 t
隔夜:s 大于 t 并且 (x 大于等于 s 或者 x 小于 t),则灯亮。
否则,灯不亮。

时间复杂度

O(1)

AC代码

#include<iostream>
using namespace std;int main()
{int s, t, x;cin >> s >> t >> x;if ((s <= x && x < t) || (s > t && (x >= s || x < t))){cout << "Yes" << endl;}else{cout << "No" << endl;}return 0;
}

B - Takahashi’s Secret B - Takahashi’s Secret

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

题目大意

Takahashi有N个朋友,他们都有昵称:Friend 1, Friend 2, …, Friend N。
有一天,Takahashi不小心让他的一个朋友Friend X知道了他的秘密。
对于每个i = 1, 2, …, N,当Friend i得知秘密时,如果Friend Ai还没有得知秘密,则他/她会与Friend Ai分享秘密。
最后有多少个Takahashi的朋友会知道这个秘密?

思路分析

解题关键:何时终结?
直到找到一个已经知道秘密的朋友
可以使用一个布尔数组b,记录哪些朋友已经知道秘密。用一个数组a来表示每个朋友所知道的秘密的来源,即a[i]表示Friend i得知秘密时,他/她从哪个朋友那里得知的。初始时,所有朋友都未知秘密,即a[i]=i。然后,从Friend X开始,逐步迭代找到秘密的来源,直到找到一个已经知道秘密的朋友。

时间复杂度

O(N)

AC代码

#include<bits/stdc++.h>
using namespace std;int main()
{int n,x;cin>>n>>x;int a[100001];bool b[100001];// 输入每个朋友的秘密来源for(int i=1;i<=n;i++)cin>>a[i];int i=x;int ans=0;do{b[i]=true; // 标记当前朋友已知秘密i=a[i]; // 更新当前朋友的秘密来源ans++;}while(!b[i]); // 直到找到一个已知秘密的朋友cout<<ans<<endl; return 0;
}

C - Final DayC - Final Day

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

题目大意

N个学生参加了一场为期4天的考试。每天有一个300分的测试,总共有1200分。已经过去了头三天的考试,现在即将开始第四天的考试。第i个学生(1≤i≤N)在第j天(1≤j≤3)上得到了Pi,j分。
对于每个学生,确定他/她是否有可能在第四天之后排名前KK。

思路分析

看该学生的总分加上300(第四天的最高分)是否大于等于排名前K的学生前三天的总分(第四天的最低分)。

时间复杂度

O(NlogN)

AC代码

#include <bits/stdc++.h>
using namespace std;int main() {int n, k;cin >> n >> k; k -= 1; // 将KK减去1,以便与数组索引对应vector<int> p(n); // 定义一个保存每个学生总分的数组for (int& x : p) {int a, b, c;cin >> a >> b >> c; x = a + b + c; // 计算每个学生的总分并保存在数组中}vector<int> q = p; // 复制总分数组sort(begin(q), end(q), greater<>()); // 对总分数组进行降序排序for (int x : p) {cout << (x + 300 >= q[k] ? "Yes" : "No") << '\n'; // 判断每个学生是否有可能在第四天之后排名前k}
}

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

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

相关文章

C高级【day3】

思维导图&#xff1a; 判断家目录下&#xff0c;普通文件的个数和目录文件的个数&#xff1a; #!/bin/bashvar1(ls -l ~/ | cut -d r -f 1 | grep -i -) var2(ls -l ~/ | cut -d r -f 1 | grep -i d) #echo ${var1[*]} #echo ${var2[*]}echo 普通文件个数&#xff1a;${#var…

Bug的严重等级和优先级别与分类

一、 Bug的严重等级定义&#xff1a; 1、 Blocker 即系统无法执行、崩溃或严重资源不足、应用模块无法启动或异常退出、无法测试、造成系统不稳定。 严重花屏内存泄漏 用户数据丢失或破坏系统崩溃/死机/冻结模块无法启动或异常退出严重的数值计算错误功能设计与需求严重不符其…

激荡十三年,消费金融进入“体验争夺战”的下半场

消费金融行业又开始涌动着变局。 先是一些老玩家悬着的心&#xff0c;终于落地。过去两年&#xff0c;消费金融是蚂蚁集团整改的关键板块。前不久&#xff0c;蚂蚁集团被监管部门开出71.23亿元的“罚单”&#xff0c;市场普遍认为这是利空出尽的信号。 与此同时&#xff0c;竞…

微服务-nacos配置管理

Nacos配置管理 统一配置管理&#xff1a;一次配置更改并支持热更新。将核心配置存储到配置管理服务&#xff0c;当微服务启动时会自动读取配置管理服务中的配置信息并结合本地配置启动。当配置改动时&#xff0c;配置管理服务会自动通知微服务&#xff0c;微服务读取新配置并自…

给Java程序加入许可证:保护我们的代码

在软件开发过程中&#xff0c;保护您的Java程序免受未经授权的使用是非常重要的。一种常见的方法是通过为您的程序添加许可证来限制其使用。本文将介绍如何使用机器码生成许可证&#xff0c;只有拥有正确许可证的用户才能启动您的程序。 什么是机器码&#xff1f; 机器码是计…

Zebec Payroll :计划推出 WageLink On-Demand Pay,进军薪酬发放领域

“Zebec Protocol 生态旨以 Web3 的方式建立全新的公平秩序&#xff0c;基于其流支付体系构建的薪酬支付板块&#xff0c;就是解决问题的一把利刃” Zebec Protocol 在创立之初就有着一个十分宏大的愿景&#xff0c;其希望通过 Web3 的方式来进一步打破世界上一些不公平现象。 …

【力扣】21. 合并两个有序链表 <链表指针>

【力扣】21. 合并两个有序链表 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例1 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] 示例 2 输入&#xff1a;l1 [], l2 [] 输出&#xff1a;…

华为云低代码平台Astro Canvas 搭建汽车展示大屏——实验指导手册

实验背景 大屏应用Astro Canvas是华为云低代码平台Astro的子服务之一&#xff0c;是以数据可视化为核心&#xff0c;以屏幕轻松编排&#xff0c;多屏适配可视为基础&#xff0c;用户可通过图形化界面轻松搭建专业水准的数据可视化大屏。例如汽车展示大屏、监控大屏、项目开发大…

华为QinQ技术的基本qinq和灵活qinq 2种配置案例

基本qinq配置&#xff1a; 运营商pe设备在收到同一个公司的ce发来的的包&#xff0c;统一打上同样的vlan &#xff0c;如上图&#xff0c;同一个家公司两边统一打上vlan 2&#xff0c;等于在原内网vlan 10或20过来的包再统一打上vlan 2的标签&#xff0c;这样传输就不会和其它…

Stable Diffusion教程(6) - 图片高清放大

放大后细节 修复图片损坏 显存占用 速度 批量放大 文生图放大 好 是 高 慢 否 附加功能放大 一般 否 中 快 是 图生图放大 好 是 低 慢 是 tile模型放大 非常好 是 高 快 是 通过文生图页面的高清修复 优点&#xff1a;放大时能添加更多细节&am…

道本科技受邀参加建筑产业互联网推动建筑产业现代化体系构建座谈会,以数字化产品为建筑行业注入新动能!

2023年7月底&#xff0c;道本科技作为中国建筑业协会合作伙伴&#xff0c;受邀参加了建筑产业互联网推动建筑产业现代化体系构建座谈会。在这次座谈会上&#xff0c;道本科技旗下产品“合规数”“合同智能审查”和“智合同范本库”被中国建筑&#xff08;中小企业&#xff09;产…

HTML5中的data-*属性

介绍&#xff1a; data-*全局属性是一类被称为自定义数据属性的属性&#xff0c;它赋予我们在所有 HTML 元素上嵌入自定义数据属性的能力。 data-*的使用 <div class"child" data-name"小红" data-age"18"></div> 在js里有两种获…

javaScript 树形结构 递归查询方法。

1. 函数递归定义 程序调用自身的编程技巧称为递归&#xff08; recursion&#xff09;。 2.使用条件 1.存在限制条件&#xff0c;当满足这个限制条件的时候&#xff0c;递归便不再继续。 2.每次递归调用之后越来越接近这个限制条件。 3.既然是自己调用自己&#xff0c;那么整个…

【问题解决】mysql 数据库字符串分割之后多行输出方法

背景&#xff1a; 项目需要从一张表查询出来数据插入到另一张表&#xff0c;其中有一个字段是用逗号分隔的字符串&#xff0c;需要多行输入到另一张表&#xff0c;那么这个如何实现呢 方案&#xff1a; 下面先粘贴下sql语句&#xff1a; select SUBSTRING_INDEX(SUBSTRING_…

选数(c++题解)

题目描述 已知 n 个整数 x1​,x2​,⋯,xn​&#xff0c;以及 1 个整数 kk&#xff08;k<nk<n&#xff09;。从 nn 个整数中任选 kk 个整数相加&#xff0c;可分别得到一系列的和。例如当 n4&#xff0c;k3&#xff0c;4 个整数分别为 3,7,12,19 时&#xff0c;可得全部的…

【办公自动化】使用Python一键提取PDF中的表格到Excel(文末送书5本)

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

用html+javascript打造公文一键排版系统14:为半角和全角字符相互转换功能增加英文字母、阿拉伯数字、标点符号、空格选项

一、实际工作中需要对转换选项细化内容 在昨天我们实现了最简单的半角字符和全角字符相互转换功能&#xff0c;就是将英文字母、阿拉伯数字、标点符号、空格全部进行转换。 在实际工作中&#xff0c;我们有时只想英文字母、阿拉伯数字、标点符号、空格之中的一两类进行转换&a…

用Rust实现23种设计模式之建造者模式

当使用 Rust 实现建造者模式时&#xff0c;我们可以通过结构体和方法链来实现。建造者模式是一种创建型设计模式&#xff0c;它允许你按照特定的顺序构建复杂对象&#xff0c;同时使你能够灵活地构建不同的变体。下面是一个使用 Rust 实现建造者模式的示例&#xff0c; 在示例中…

python中计算2的32次方减1,python怎么算2的3次方

大家好&#xff0c;给大家分享一下怎么样用python编写2的n次方,n由键盘输入&#xff0c;很多人还不知道这一点。下面详细解释一下。现在让我们来看看&#xff01; ---恢复内容开始--- 1、内置函数&#xff1a;取绝对值函数abs() 2、内置函数&#xff1a;取最大值max()&#xff…