当前位置: 首页 > news >正文

Codeforces Round 784 (Div. 4)

题目链接

A. Division?

题意

在这里插入图片描述

思路

模拟即可

示例代码

void solve() {int n;cin >> n;int ans;if(n >= 1900) ans = 1;else if(n >= 1600) ans = 2;else if(n >= 1400) ans = 3;else ans = 4;cout << "Division " << ans << '\n';}

B. Triple

题意

在这里插入图片描述

思路

模拟即可

void solve() {map<int, int>mp;int n;cin >> n;fer(i, 0, n){int a;cin >> a;mp[a]++;}for(auto it : mp){if(it.second >= 3){cout << it.first << '\n';return;}}cout << -1 << '\n';
}

C. Odd/Even Increments

题意

在这里插入图片描述

思路

因为每次操作都是对所有的奇数位置或者所有的偶数位置+1,操作次数是不限的,所以只需要判断初始条件下所有奇数位置的元素奇偶性是否一致,和所有偶数位置的奇偶性是否一致。

示例代码

void solve() {int n;cin >> n;vector<int>arr(n);bool ok = true;fer(i, 0, n) cin >> arr[i];for(int i = 0; i + 2 < n; i += 2){if((arr[i] & 1) != (arr[i + 2] & 1)){ok = false;break;}}if(!ok){cout << "NO" << '\n';return;}for(int i = 1; i + 2 < n; i += 2){if((arr[i] & 1) != (arr[i + 2] & 1)){ok = false;break;}}if(ok) cout << "YES" << '\n';else cout << "NO" << '\n';
}

D. Colorful Stamp

题意

在这里插入图片描述

思路

经过分析验证,任意连续区间内同时包含RB的字符串最终都可以实现。因此,我们只需要判断所有连续W之间的子串是否同时含有RB即可。

示例代码

void solve() {int n;cin >> n;string s;cin >> s;s = "W" + s + "W";vector<int>arr;fer(i, 0, s.size())if(s[i] == 'W') arr.push_back(i);fer(i, 0, arr.size() - 1){int l = arr[i], r = arr[i + 1];int c1 = 0, c2 = 0;fer(j, l + 1, r){if(s[j] == 'R') c1++;else if(s[j] == 'B') c2++;}//cout << c1 << ' ' << c2 << '\n';if(c1 * c2 == 0 && !(c1 + c2 == 0)){cout << "NO" << '\n'; return;}}cout << "YES" << '\n';
}

E. 2-Letter Strings

题意

在这里插入图片描述

思路

题意要我们找出这样的字符串的对数:这两个字符串只有一个位置对应的字符不同。我们可以用二维数组记录每种字符串的个数,再模拟即可。

示例代码

void solve() {int n;cin >> n;string s;int mp[20][20]{};ll ans = 0;while(n--){cin >> s;fer(i, 0, 11){if(s[1] - 'a' != i) ans += mp[s[0] - 'a'][i];if(s[0] - 'a' != i) ans += mp[i][s[1] - 'a'];}mp[s[0] - 'a'][s[1] - 'a']++;}cout << ans << '\n';
}

也可以这样写,区别在于是否重复统计了次数,输入字符串时统计只统计之前的次数,全部输入完再统计会同时统计后面的次数,因此重复了

void solve() {int n;cin >> n;int mp[20][20]{};vector<string>arr(n);fer(i, 0, n) cin >> arr[i], mp[arr[i][0] - 'a'][arr[i][1] - 'a']++;ll ans = 0;fer(i, 0, n){fer(j, 0, 11){if(arr[i][1] - 'a' != j) ans += mp[arr[i][0] - 'a'][j];if(arr[i][0] - 'a' != j) ans += mp[j][arr[i][1] - 'a'];}}cout << ans / 2 << '\n';
}

F. Eating Candies

题意

在这里插入图片描述

思路

相向前后指针,注意边界的处理

示例代码

void solve() {int n;cin >> n;vector<int>arr(n + 1);fer(i, 1, n + 1) cin >> arr[i];int s1 = arr[1], s2 = arr.back();int cnt = 0;int l = 1, r = n;while(l < r){while(l < r - 1 && s1 < s2) l++, s1 += arr[l];while(l < r - 1 && s1 > s2) r--, s2 += arr[r];if(s1 == s2) cnt = l + (n - r + 1);l++, s1 += arr[l];}cout << cnt << '\n';
}

G. Fall Down

题意

在这里插入图片描述

思路

遍历每一列,从下往上找连续空单元格.,如果在这过程中遇到石头*就进行swap,如果遇到障碍物o,就需要归零空单元格数,重新向上查找.

示例代码

void solve() {int n, m;cin >> n >> m;vector<string> arr(n);fer(i, 0, n) cin >> arr[i];fer(col, 0, m){int row = n - 1, cnt = 0;while(row >= 0){while(row >= 0 && arr[row][col] == '.') cnt++, row--;if(row >= 0 && arr[row][col] == '*') swap(arr[row][col], arr[row + cnt][col]), row--;else cnt = 0, row--;}}for(auto c : arr) cout << c << '\n';cout << '\n';
}

相关文章:

Codeforces Round 784 (Div. 4)

题目链接 A. Division? 题意 思路 模拟即可 示例代码 void solve() {int n;cin >> n;int ans;if(n > 1900) ans 1;else if(n > 1600) ans 2;else if(n > 1400) ans 3;else ans 4;cout << "Division " << ans << \n;}B. T…...

OpenNebula 开源虚拟平台,对标 VMware

Beeks Group 主要为金融服务提供商提供虚拟专用服务器和裸机服务器。该公司表示&#xff0c;转向 OpenNebula 不仅大幅降低了成本&#xff0c;还使其虚拟机效率提升了 200%&#xff0c;并将更多裸机服务器资源用于客户端负载&#xff0c;而非像以往使用 VMware 时那样用于虚拟机…...

软件项目标书参考,合同拟制,开发合同制定,开发协议,标书整体技术方案,实施方案,通用套用方案,业务流程,技术架构,数据库架构全资料下载(原件)

1、终止合同协议书 2、项目合作协议 3、合同交底纪要 4、合同管理台账 软件资料清单列表部分文档清单&#xff1a;工作安排任务书&#xff0c;可行性分析报告&#xff0c;立项申请审批表&#xff0c;产品需求规格说明书&#xff0c;需求调研计划&#xff0c;用户需求调查单&…...

Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1

文章目录 Jenkins环境一站式教程&#xff1a;从安装到配置&#xff0c;打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1一、环境准备1.1 机器规划1.2 环境配置1.2.1 设置主机名1.2.2 停止和禁用防火墙1.2.3 更新系统 二、安装配置Jenkins2.1 安装JDK…...

【Android】ARouter源码解析

本篇文章主要讲解了 ARouter 框架的源码分析&#xff0c;包括其初始化过程、核心方法等。 初始化 在使用ARouter的时候我们都会先进行初始化&#xff1a; ARouter.init(this);我们看下 init() 源码&#xff1a; public static void init(Application application) {// 检查…...

计算直线的交点数

主要实现思路 整体流程思路&#xff1a; 程序旨在解决给定平面上不同数量的直线&#xff08;无三线共点&#xff09;&#xff0c;求出每种直线数量下所有可能的交点数量&#xff0c;并按要求格式输出的问题。整体通过初始化一个二维数组来存储不同直线数量与交点数量对应的存在…...

STM32基于HAL库的串口接收中断触发机制和适用场景

1. HAL_UART_Receive_DMA函数 基本功能 作用&#xff1a;启动一个固定长度的 DMA 数据接收。特点&#xff1a; 需要预先指定接收数据的长度&#xff08;Size 参数&#xff09;。DMA 会一直工作直到接收到指定数量的数据&#xff0c;接收完成后触发 HAL_UART_RxCpltCallback 回…...

java面试宝典

本文只摘抄部分宝典内容&#xff0c;完整宝典可以在打开下方链接&#xff0c;在网盘获取 ^ _ ^ 链接:java面试宝典 提取码: wxy1 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 链接: java前端面试宝典 提取码: wxy1 复制这段内容后打开百度网盘手机App&#xff…...

Scala—Slice(提取子序列)方法详解

Scala—Slice&#xff08;提取子序列&#xff09;方法详解 在 Scala 中&#xff0c;slice 方法用于从集合中提取一个连续的子序列&#xff08;切片&#xff09;。可以应用于多种集合类型&#xff0c;如 List、Array、Seq 等。 一、slice 方法的定义 slice 根据提供的起始索引…...

【电子通识】案例:USB Type-C USB 3.0线缆做直通连接器TX/RX反向

【电子通识】案例:连接器接线顺序评估为什么新人总是评估不到位?-CSDN博客这个文章的后续。最近在做一个工装项目,需要用到USB Type-C线缆做连接。 此前已经做好了线序规划,结果新人做成实物后发现有的USB Type-C线缆可用,有的不行。其中发现USB3.0的TX-RX信号与自己的板卡…...

【SKFramework框架核心模块】3-5、函数扩展模块

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群&#xff1a;398291828小红书小破站 大家好&#xff0c;我是佛系工程师☆恬静的小魔龙☆&#xff0c;不定时更新Unity开发技巧&#xff0c;觉得有用记得一键三连哦。 一、前言 【Unity3D框架】SKFramework框架完全教程《全…...

使用 EasyExcel 提升 Excel 处理效率

目录 前言1. EasyExcel 的优点2. EasyExcel 的功能3. 在项目中使用 EasyExcel3.1 引入依赖3.2 实体类的定义与注解3.3 工具类方法的实现3.4 在 Controller 中使用 4. 总结5. 参考地址 前言 在日常开发中&#xff0c;Excel 文件的处理是不可避免的一项任务&#xff0c;特别是在…...

【提高篇】3.7 GPIO(七,GPIO开发模型 一)

目录 一,开发模型 二,初始化函数 2.1 时钟使能 一,开发模型 通常我们在进行GPIO相关外设的开发时,往往遵循下面4个步骤,如下: 初始化函数 用于进行时钟设置、参数设置、IO设置、中断设置等。读处理函数 用于从外设读取数据。写处理函数 用于从向外设写数据。中断处理…...

Webpack Tree Shaking 技术原理及应用实战,优化代码,精简产物

前言 在前端开发中&#xff0c;优化代码体积和提升应用性能是至关重要的课题。Webpack 提供了多种优化手段来帮助开发者实现这一目标&#xff0c;Tree Shaking 就是其中一种非常重要的优化技术&#xff0c;它通过在编译阶段移除未被使用的代码模块&#xff0c;从而显著减小最终…...

angular19-官方教程学习

周日了解到angular已经更新到19了&#xff0c;想按官方教程学习一遍&#xff0c;工欲善其事必先利其器&#xff0c;先更新工具&#xff1a; 安装新版版本 卸载老的nodejs 20.10.0&#xff0c;安装最新的LTS版本 https://nodejs.org 最新LTS版本已经是22.12.0 C:\Program File…...

RocketMQ集群部署完整指南

前言 本文将详细介绍RocketMQ集群的部署流程,包括环境准备、安装配置、启动运维等各个方面。 一、环境准备 1.1 系统要求 64位操作系统,建议LinuxJDK 1.8及以上版本源码安装需要Maven 3.2.x1.2 下载RocketMQ 可从以下地址获取RocketMQ安装包: Apache官方开源地址: http://r…...

解决mysql 内存持续上涨问题

问题背景&#xff1a; 业务量不大&#xff0c;Mysql 内存持续上涨&#xff0c;虽然不是很明显&#xff0c;但随着时间慢慢增长&#xff0c;1~2个月左右内存达到80%一旦有一些执行缓慢的sql 内存会快速上去增加/修改大表的字段内存会快速上去 常规操作&#xff1a; Mysql 设置…...

Qt 小项目 学生管理信息系统

主要是对数据库的增删查改的操作 登录/注册界面&#xff1a; 主页面&#xff1a; 添加信息&#xff1a; 删除信息&#xff1a; 删除第一行&#xff08;支持多行删除&#xff09; 需求分析&#xff1a; 用QT实现一个学生管理信息系统&#xff0c;数据库为MySQL 要求&#xf…...

16-01、JVM系列之:内存与垃圾回收篇(一)

JVM系列之&#xff1a;内存与垃圾回收篇&#xff08;一&#xff09; ##本篇内容概述&#xff1a; 1、JVM结构 2、类加载子系统 3、运行时数据区之&#xff1a;PC寄存器、Java栈、本地方法栈一、JVM与JAVA体系结构 JAVA虚拟机与JAVA语言并没有必然的联系&#xff0c;它只是与特…...

聊聊系统的弹力设计-服务器性能指标篇(一)

一、什么是弹性机制 弹性&#xff0c;大家可以轻易的联想到橡胶&#xff0c;可伸缩性是弹性机制的一个很重要的特点&#xff0c;但是实际上弹性不等同于可伸缩性 弹性&#xff08;Elasticity&#xff09; 通常指的是系统能够自动适应负载的变化&#xff0c;即自动扩展和收缩资…...

毕业季论文救星:深度解析百考通AI如何智能攻克文献综述与开题报告

又到一年毕业季&#xff0c;无数莘莘学子在为自己学术生涯的“终极答卷”——毕业论文而挑灯夜战。其中&#xff0c;文献综述的浩如烟海与开题报告的千头万绪&#xff0c;无疑是横亘在大多数同学面前的两座大山。你是否也曾面对海量文献不知如何筛选梳理&#xff1f;是否为构建…...

OpenClaw 网关重启指南:常用指令与故障修复

手把手教你一键部署OpenClaw&#xff0c;连接微信、QQ、飞书、钉钉等&#xff0c;1分钟全搞定&#xff01; 一、几种快速重启的法子 看你当初是怎么部署的&#xff0c;挑下面最适合你的那条命令就行&#xff1a; 适用情况具体命令最省事的&#xff08;系统托管模式&#xff…...

科研写作效率提升300%:WPS-Zotero跨平台文献管理终极指南

科研写作效率提升300%&#xff1a;WPS-Zotero跨平台文献管理终极指南 【免费下载链接】WPS-Zotero An add-on for WPS Writer to integrate with Zotero. 项目地址: https://gitcode.com/gh_mirrors/wp/WPS-Zotero WPS-Zotero是一款革命性的WPS Office插件&#xff0c;专…...

Ollama部署LFM2.5-1.2B-Thinking:从CSDN文档到实际调用的完整链路

Ollama部署LFM2.5-1.2B-Thinking&#xff1a;从CSDN文档到实际调用的完整链路 1. 认识LFM2.5-1.2B-Thinking模型 LFM2.5-1.2B-Thinking是一个专门为设备端部署设计的智能文本生成模型。这个模型属于LFM2.5系列&#xff0c;是在LFM2架构基础上通过扩展预训练和强化学习进一步优…...

通义千问3-Reranker-0.6B实战应用:智能客服问答排序系统搭建

通义千问3-Reranker-0.6B实战应用&#xff1a;智能客服问答排序系统搭建 1. 智能客服问答排序系统概述 在智能客服系统中&#xff0c;如何从海量知识库中快速找到最匹配用户问题的答案&#xff0c;是提升用户体验的关键。传统基于关键词匹配的方法往往难以理解用户真实意图&a…...

小龙虾使用手册(蓝皮书)实战案例版

扫描下载文档详情页: https://www.didaidea.com/wenku/16656.html...

Keil环境下C与汇编混合编程实战:从参数传递到函数调用

1. 为什么需要C与汇编混合编程&#xff1f; 在嵌入式开发领域&#xff0c;C语言因其可移植性和开发效率成为主流选择&#xff0c;但当你需要精确控制硬件时序或优化关键代码段时&#xff0c;汇编语言的优势就显现出来了。我曾在电机控制项目中遇到一个典型场景&#xff1a;用C语…...

贝叶斯分位数回归:超越均值的数据分析方法

贝叶斯分位数回归&#xff1a;超越均值的数据分析方法 【免费下载链接】pymc Python 中的贝叶斯建模和概率编程。 项目地址: https://gitcode.com/GitHub_Trending/py/pymc 问题-方案-验证-应用四象限框架 问题&#xff1a;均值回归的业务痛点 在数据分析实践中&#…...

MQTT安全连接不止一种:用MQTTnet库玩转C#客户端单向与双向认证

MQTT安全连接实战&#xff1a;从单向认证到双向认证的C#实现精要 物联网设备间的数据传输安全一直是开发者关注的核心问题。MQTT协议作为轻量级的消息传输协议&#xff0c;在工业自动化、智能家居等领域广泛应用&#xff0c;但其默认的1883端口通信并不加密。本文将深入探讨如何…...

嵌入式按键事件处理框架:高可靠消抖与复合操作状态机

1. Button库深度解析&#xff1a;面向嵌入式系统的高可靠性按键事件处理框架1.1 设计定位与工程价值Button库并非简单的GPIO电平读取封装&#xff0c;而是一个面向工业级嵌入式应用的状态感知型按键事件引擎。其核心设计目标是解决传统按键处理中长期存在的三大工程痛点&#x…...