C. LR-remainders

news/2025/4/2 18:42:59/文章来源:https://www.cnblogs.com/yxcblogs/p/18803493

https://codeforces.com/problemset/problem/1932/C

题意:给定长度为n的数组a和字符串s,s包含L和R,再给定一个数字m。 有n次操作,每次操作根据S中的字符,删除a中最左边或者最右边的一个数字。在每次操作之前,输出当前数组a中所有的数字相乘 % m的结果。

思路:每次计算后删除一个数,逆向思维,相当于每次在当前的结果中增加一个数相乘,并对m取模,只要按照s中的删除元素的顺序,逆着来一遍就行。 先确定删除元素的顺序,然后逆着来,一个一个加元素加到结果中,计算出余数,然后再逆序输出余数即可。

思路:看了没思路,只想到暴力破解的方法,然后尝试在暴力的基础上找规律,进行优化,根本想不到逆向思维。 以后5分钟没思路,直接看题解,节省时间~承认菜

inline void solve() {int n, m;cin >> n >> m;deque<int> dq(n);iota(dq.begin(), dq.end(), 0);vector<int> a(n);for (auto& x : a) {cin >> x;}string s;cin >> s;stack<int> stk;for (int i = 0; i < n; ++i) {if (s[i] == 'L') {stk.push(dq.front());dq.pop_front();}else {stk.push(dq.back());dq.pop_back();}}int sum = 1;vector<int> ans;ans.reserve(n);while (!stk.empty()) {sum = 1ll * sum * a[stk.top()] % m;ans.push_back(sum);stk.pop();}reverse(ans.begin(), ans.end());for (int i = 0; i < n; ++i) {cout << ans[i] << " \n"[i == n - 1];}
}

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

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

相关文章

gitlab自动化脚本

命令集合1.查看特定时间段的提交信息 timedatectl set-time "2021-10-02 13:00:00" git log --since="2021-10-01" --before="2021-10-30" --author="张斌" git log --until="2021-08-01"2.截取commitid创建新的分支 timeda…

Web前端入门第 23 问:CSS 选择器的优先级

任何地方都存在阶级,CSS 选择器也不例外,也会讲一个三六九等。选择器类别通配符选择器 标签选择器 类选择器 ID选择器 属性选择器 伪类选择器 伪元素选择器 关系选择器流传已久的阶级划分选择器 权重继承父标签的样式、* 通配符选择器 0,0,0,0标签选择器 0,0,0,1类选择器、属…

掌握设计模式--状态模式

状态模式(State Pattern) 状态模式(State Pattern)是一种行为设计模式,它允许对象在其内部状态改变时改变其行为,看起来像是改变了其类。这种模式通常用于解决对象在运行时状态多变且行为复杂的问题。 核心思想:将状态与行为绑定,每种状态对应一个具体类有独立的行为逻…

MySQL 主从复制:数据库的克隆军团

MySQL 主从复制:数据库的"克隆军团" 👯‍♂️ 如果说数据库世界也有科幻电影,那么 MySQL 的主从复制绝对堪比《星球大战》中的克隆人军队,一个原版,无数复制品,却保持着惊人的同步... 什么是主从复制?🤔 MySQL 主从复制是一种数据库技术,允许将一台 MySQL…

必看!Spring Boot 项目新老版本 Controller 低侵入式切换实战秘籍

在当今快速迭代的软件开发环境中,项目的迁移重构是许多开发团队都绕不开的工作。最近,业务方的一个项目就面临着这样的挑战,而在迁移重构的过程中,如何确保下游系统对接无感知成为了重中之重。具体来说,他们需要实现这样一个需求:读请求访问老版本 Controller 时,能够无…

第6章 异步原理

第6章 异步原理 6.1 生成代码的结构 异步模式的实现原理是基于 状态机 的,它负责追踪 async 方法当前的执行进度。从逻辑上讲,可以分为以下 4 种状态:未启动 正在执行 暂停 完成(成功或 faulted)Eureka 这里的“暂停”,指程序运行至 await 处,任务未完成时,当前方法在此…

用Arduino开发STM32

参考文档: https://blog.csdn.net/weixin_42880082/article/details/121619101 qq:505645074

【重点】文件摆渡系统如何简化跨平台跨网络的文件传输?

在当今数字化时代,企业数据的流动性和安全性变得愈发重要。随着业务规模的扩大和全球化协作的深入,跨平台、跨网络的文件传输需求日益增长。然而,传统的文件传输方式往往面临效率低下、安全性不足、兼容性差等问题。文件摆渡系统作为一种专门设计用于简化跨平台、跨网络文件…

想让你多爱自己一些的开源计时器

我用过 Pomotroid、Reminders MenuBar、Timer 等众多优秀、开源的番茄时钟和计时工具,它们帮我更高效地管理时间,让我更专注地投入工作。 但有一个问题始终困扰着我:每当计时结束时,我总是习惯性地忽略休息提醒,继续沉浸在手头的事情中,直到第二天身体不适才追悔莫及。 最…

VMware ESXi 8.0U3d macOS Unlocker OEM BIOS 标准版和厂商定制版,已适配主流品牌服务器

VMware ESXi 8.0U3d macOS Unlocker & OEM BIOS 标准版和厂商定制版,已适配主流品牌服务器VMware ESXi 8.0U3d macOS Unlocker & OEM BIOS 标准版和厂商定制版 ESXi 8.0U3d 标准版,Dell (戴尔)、HPE (慧与)、Lenovo (联想)、Inspur (浪潮)、Cisco (思科)、Hitachi (日…

AMS1117-LDO(线性稳压器)稳压电路

AMS1117-LDO(线性稳压器)稳压电路 原理图引脚说明编号 名称 功能描述1 GND GND2 VOUT 输出3 VIN 输入4 VOUT 输出拓展C8和C7为输出滤波电容,用于抑制自激振荡。如果这两个电容不接,线性稳压器的输出通常会是一个振荡波形。 电容C5和C6是输入电容。对于交流电压整流输入,它…

Avalonia 界面效果 滚动的渐变矩形边框

本文将和大家介绍一个 Avalonia 界面效果,制作一个滚动的渐变矩形边框本文代码基于 Avalonia 11.2.x 版本实现,预期在其他 Avalonia 版本也能正常使用 本文效果由 晓嗔戈 提供,我只是记录此实现方法的工具人 界面效果如下图所示,录制的gif中颜色存在一些偏差,动画有些卡顿…