Atcoder Beginner Contest 366
传送门
A - Election 2
时间限制:2秒 内存限制:1024MB
分数:100分
问题描述
在 AtCoder 市举行市长选举。候选人是 Takahashi 和 Aoki。
目前有 N 张有效选票投给了这两个候选人,并且计票正在进行中。这里,N 是一个奇数。
目前的票数为 Takahashi 得 T 票,Aoki 得 A 票。
确定在这个时候选举的结果是否已经确定。
限制
- N 是奇数
- 所有输入都是整数
输入格式
输入以以下格式从标准输入给出:
输出格式
如果选举结果已经确定,则输出“Yes”,否则输出“No”。
样例输入输出
样例输入1
样例输出1
即使剩下的一票投给 Aoki,Takahashi 仍然会获胜。也就是说,他的胜利已经确定,所以打印“Yes”。
样例输入2
样例输出2
虽然 Aoki 目前获得的票数更多,但如果 Takahashi 获得剩下的39票,他就会获胜。因此,打印“No”。
样例输入3
样例输出3
思路
只有 T 或者 A 大于等于 N 的一半的时候输出 Yes,否则输出 No。
代码
#include <bits/stdc++.h>
using namespace std;inline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();return x * f;
}int main() {int n = read(), t = read(), a = read();if (t > n / 2 || a > n / 2) puts("Yes");else puts("No");return 0;
}
B - Vertical Writing
时间限制:2秒 内存限制:1024MB
分数:200分
问题描述
给定一个水平书写的文本,将其转换为垂直书写,并用 * 填充空白。
你有 N 个字符串 ,它们由小写英文字母组成。令 M 为这些字符串的最大长度。
请打印 M 个字符串 ,满足以下条件:
1. 每个 由小写英文字母和 * 组成。
2. 每个 的末尾不应为 *。
3. 对于每一个 1 ≤ i ≤ N,满足以下条件:
对于每一个 1 ≤ j ≤ ∣∣,
的第 (N - i + 1) 个字符存在,并且
的第 (N - i + 1) 个字符依次连接等于
。
对于 ∣∣+1 ≤ j ≤ M,
的第 (N - i + 1) 个字符要么不存在,要么为 *。
这里,∣∣表示字符串
的长度。
限制
- N 是一个在 1 到 100 之间(包括 1 和 100)的整数。
- 每个
是一个由小写英文字母组成的字符串,长度在 1 到 100 之间(包括 1 和 100)。
输入格式
输入以以下格式从标准输入给出:
输出格式
按照以下格式打印答案:
样例输入输出
样例输入1
样例输出1
将 * 作为 的第 2 个字符放置,可以将 c 放在正确的位置。另一方面,将 * 作为
的第 2 和第 3 个字符放置会使
以 * 结尾,这违反了条件。
样例输入2
样例输出2
思路
按照题意模拟
代码
#include <bits/stdc++.h>
using namespace std;int n, len = 0;
string s[105];int main() {ios::sync_with_stdio(false); cin.tie(0);cin >> n;for (int i = 1; i <= n; i++) {cin >> s[i];int size = s[i].size();len = max(len, size); // 记录最大长度}for (int i = 0; i < len; i++) {int num = 0;for (int j = n; j; j--) {int size = s[j].size();if (i < size) {for (int i = 1; i <= num; i++) putchar('*');num = 0;putchar(s[j][i]);}else num++; // 避免*出现在字符串末尾}putchar('\n');}return 0;
}
C - Balls and Bag Query
时间限制:2秒 内存限制:1024MB
分数:300分
问题描述
你有一个空袋子。你需要处理 Q 个查询,这些查询必须按顺序进行。
查询有三种类型:
1. 1 x:将一个写有整数 x 的球放入袋子。
2. 2 x:从袋子中移除一个写有整数 x 的球并丢弃。保证在执行此查询时,袋子中有一个写有整数 x 的球。
3. 3:打印袋子中球上写着的不同整数的数量。
限制
- 当给出第二类查询时,袋子中有一个写有整数 x 的球。
- 至少有一个第三类查询。
- 所有输入值均为整数。
输入格式
输入以以下格式从标准输入给出:
第 i 个查询 以以下三种格式之一给出:
输出格式
如果有 K 个第三类查询,打印 K 行。第 i 行 () 应包含第 i 个第三类查询的答案。
样例输入输出
样例输入1
样例输出1
初始时,袋子是空的。
对于第一个查询 1 3,一个写有整数 3 的球进入袋子。
对于第二个查询 1 1,一个写有整数 1 的球进入袋子。
对于第三个查询 1 4,一个写有整数 4 的球进入袋子。
对于第四个查询 3,袋子里有写有整数 1、3、4 的球,因此输出 3。
对于第五个查询 2 1,一个写有整数 1 的球从袋子中被移除。
对于第六个查询 3,袋子里有写有整数 3、4 的球,因此输出 2。
对于第七个查询 1 5,一个写有整数 5 的球进入袋子。
对于第八个查询 3,袋子里有写有整数 3、4、5 的球,因此输出 3。
样例输入2
样例输出2
思路
用数组记录写有 x 的球个数,同时记录有多少种不同的球。
代码
#include <bits/stdc++.h>
using namespace std;const int N = 1e6 + 10;
int q, vis[N], num = 0;inline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();return x * f;
}int main() {for (int i = 0; i <= 1000000; i++) vis[i] = 0;q = read();for (int i = 1; i <= q; i++) {int opt = read();if (opt == 3) printf("%d\n", num);else {int x = read();if (opt == 1) {if (!vis[x]) num++;vis[x]++;}if (opt == 2) {vis[x]--;if (!vis[x]) num--;}}}return 0;
}
D - Cuboid Sum Query
时间限制:3秒 内存限制:1024MB
分数:400分
问题描述
给定一个正整数 N,以及每个整数三元组 (x, y, z) 对应的整数 ,其中 1 ≤ x, y, z ≤ N。
你将会收到 Q 个查询,必须按顺序处理。
对于第 i 个查询 (1 ≤ i ≤ Q),你将得到一个整数元组 ,其中
。要求找到以下和:
限制
- 所有输入都是整数
输入格式
输入以以下格式从标准输入给出:
输出格式
打印 Q 行。第 i 行应包含第 i 个查询的答案。
样例输入输出
样例输入1
样例输出1
对于第一个查询,所求的值是 。因此,输出 10。
对于第二个查询,所求的值是 。因此,输出 26。
样例输入2
样例输出2
思路
三维数组的前缀和,具体实现看代码
代码
#include <bits/stdc++.h>
using namespace std;#define int long longconst int N = 105;
int n, q, a[N][N][N], b[N][N], sum[N][N][N];inline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();return x * f;
}signed main() {n = read();for (int i = 1; i <= n; i++) {for (int j = 1; j <= n; j++) {for (int k = 1; k <= n; k++) {a[i][j][k] = read();b[i][j] += a[i][j][k];sum[i][j][k] = sum[i - 1][j][k] + sum[i][j - 1][k] - sum[i - 1][j - 1][k] + b[i][j];}}}q = read();while (q--) {int l1 = read(), r1 = read(), l2 = read(), r2 = read(), l3 = read(), r3 = read();l1--, l2--, l3--;int ans = sum[r1][r2][r3] - sum[l1][r2][r3] - sum[r1][l2][r3] - sum[r1][r2][l3] + sum[l1][l2][r3] + sum[l1][r2][l3] + sum[r1][l2][l3] - sum[l1][l2][l3];printf("%lld\n", ans);}return 0;
}
相关文章:
Atcoder Beginner Contest 366
传送门 A - Election 2 时间限制:2秒 内存限制:1024MB 分数:100分 问题描述 在 AtCoder 市举行市长选举。候选人是 Takahashi 和 Aoki。 目前有 N 张有效选票投给了这两个候选人,并且计票正在进行中。这里࿰…...
【hexo博客问题】
windows下使用gitbash即可使用 其他bash会产生权限问题 npm install失败 $ npm install npm error code ENOENT npm error syscall open npm error path F:\pf_project\blog_pf\package.json npm error errno -4058 npm error enoent Could not read package.json: Error: E…...
用数组模拟栈和队列
栈 先进后出 //stk 表示定义的栈 //tt表示栈顶的下标 int stk[N], tt 0;//在栈顶上加入一个新的元素 stk[ tt] x;//弹出 tt --;//判断栈是否为空 if (tt > 0) 不为空 else empty//取出栈顶 stk[tt];1.题目 给定一个长度为 N 的整数数列,输出每个数左边第一个…...
Django内置后端和自定义后端
【图书介绍】《Django 5企业级Web应用开发实战(视频教学版)》_django 5企业级web应用开发实战(视频教学版)-CSDN博客 《Django 5企业级Web应用开发实战(视频教学版)》(王金柱)【摘要 书评 试读】- 京东图书 (jd.com) 5.2.3 内置…...
嵌入式人工智能(OpenCV-基于树莓派的人脸识别与入侵检测)
1、人脸识别 人脸识别是一种技术,通过检测、跟踪和识别人脸上的关键特征,以确认人脸的身份。它通常用于安保系统、身份验证、社交媒体和人机交互等领域。 人脸识别技术的基本原理是先通过图像处理和计算机视觉算法,提取人脸的特征点和特征描…...
如何选择适合的香港云服务器提供商?
稳定性和可靠性 确保提供商有高水平的服务器正常运行时间,并提供可靠的数据备份和恢复选项。 网络速度和延迟 选择能够提供快速和低延迟网络连接的服务商,尤其是对于目标用户位于中国大陆的企业而言。 客户支持 查看提供商是否提供24/7的客户支持&#x…...
安卓Android JAVA校招/实习面试合集:多线程、强软弱虚引用、进程、内存管理、Activity、Fragment......
本人今年(2023年)参加了很多面试,也有幸拿到了一些大厂的offer,整理了众多面试资料,后续还会分享众多面试资料。 整理成了面试系列,由于时间有限,每天整理一点,后续会陆续分享出来&a…...
Jeecgboot 字典值自动转化:DictAspect类方法改造,支持IPage、List、Object、Map类自动转化,附有源码
改造的是DictAspect类: 原来使用的 parseDictText(Object result)方法,针对返回对象为Result 的IPage的分页列表数据进行动态字典注入,当单个对象查询,列表查询,或者多个数据放到Map中时,就不会自动转化&am…...
DVWA DOM Based Cross Site Scripting (DOM型 XSS)
DVWA DOM Based Cross Site Scripting (DOM型 XSS) 文章目录 DVWA DOM Based Cross Site Scripting (DOM型 XSS)XSS跨站原理DOM型 LowMediumHighImpossible XSS跨站原理 当应用程序发送给浏览器的页面中包含用户提交的数据,但没有经过适当验证或转义时,就…...
LinkedList集合及迭代器的源码分析
一.介绍: 二.LinkedList集合特有的API: 三.迭代器的源码分析: package com.itheima.a03myarraylist;import java.util.ArrayList; import java.util.Iterator;public class A01_ArrayListDemo1 {public static void main(String[] args) {ArrayList<String> listnew Arr…...
Go调度器
线程数过多,意味着操作系统会不断地切换线程,频繁的上下文切换就成了性能瓶颈.Go提供一种机制 可以在线程中自己实现调度,上下文切换更轻量,从而达到线程数少,而并发数并不少的效果,而线程中调度的就是Goroutine 调度器主要概念: 1.G:即Go协程,每个go关键字都会创建一个协程…...
当node节点kubectl 命令无法连接到 Kubernetes API 服务器
1.问题 当node节点当node节点kubectl 命令无法连接到 Kubernetes API 服务器 [rootnode1 ~]# kubectl get nodes The connection to the server localhost:8080 was refused - did you specify the right host or port?2. 确认 kubeconfig 文件 确保节点上有有效的 kubeco…...
直接通过类CURL方式,与GRPC方法交互的命令行工具
大家好,今天给大家分享的是一个命令行工具grpcurl,它能够直接与 gRPC 服务进行交互。 项目介绍 您可以把grpcurl想象成是 curl 的 gRPC 版本,但是功能更加强大。 由于 gRPC 服务之间的通信使用的是 Protocol Buffers (Protobuf) 格式的二进…...
Hive3:数据的加载与导出
一、加载数据 在创建表之后,表中没有数据,我们不可能insert存入数据。 而是,通过数据加载,将HDFS中的数据关联到Hive表中。 建表 CREATE TABLE myhive.test_load(dt string comment 时间(时分秒), user_…...
React事件绑定的方式有哪些?区别?
React 中事件绑定的方式主要有以下几种: 直接在 JSX 中绑定事件: <button onClick{handleClick}>Click me</button> 这是最常见和推荐的方式。事件名(如 onClick)作为 JSX 的属性,值为一个函数,…...
ibis:极具潜力的Python数据分析新框架
今天要给大家介绍的Python框架叫做ibis,没错,跟著名连锁酒店宜必思同名,其作者是创造了pandas、Arrow等著名框架的Wes McKinney。 ibis的核心理念是用同一套数据框操作API,统一操纵各种主流的数据运算框架,使得用户可以…...
SQL Zoo 8+.NSS Tutorial
以下数据来自SQL Zoo 1.at Edinburgh Napier University,studying (8) Computer Science,Show the the percentage who STRONGLY AGREE.(在爱丁堡纳皮尔大学,学习“计算机科学”,显示STRONGLY AGREE的百分比࿰…...
conda pack迁移环境
文章目录 下载conda pack打包已有环境还原环境 因为有的服务器没有网络,如果想要安装自己的虚拟环境,就需要在有网络的服务器安装好环境后迁移到没有网络的服务器。conda-pack是一个命令行工具,用于打包 conda 环境,pip inatall和…...
UML建模案例分析-活动图商业建模
概述 活动图主要用来描述如何完成工作以及做什么工作。可以用活动图来描述操作、类或 用例,但是它们只能显示工作流。可以用活动图来进行商业建模,在模型中,工作、工 人、组织、对象被显示。 案例 在商业建模时,下列方面是模型要…...
C++标准模板(STL)- 低层内存管理 - 解分配函数 (operator delete, operator delete[])
低层内存管理 new 表达式是创建拥有动态存储期对象或对象数组的仅有方式,即它们拥有不受制于创建所它们在的作用域的生存期。 new 表达式通过调用分配函数获得存储。 delete 表达式销毁最终导出对象或通过 new 表达式创造的数组,然后调用解分配函数。默认…...
python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...
项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...
