Atcoder ABC341 A-D题解

比赛链接:ABC341

Problem A:

先签个到。

#include <bits/stdc++.h>
using namespace std;
int main() {int n;cin>>n;for(int i=0;i<n;i++)cout<<"10"<<endl;cout<<"1"<<endl;return 0;
}

Problem B:

继续签。

#include <bits/stdc++.h>
using namespace std;
const int maxn=200005;
int a[maxn],s[maxn],t[maxn];
int main(){int n;cin>>n;for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<=n-1;i++)cin>>s[i]>>t[i];for(int i=1;i<=n-1;i++)a[i+1]+=a[i]/s[i]*t[i];cout<<a[n]<<endl;return 0;
}

Problem C:

水题,直接\Theta (n^3)模拟就行了。

#include <bits/stdc++.h>
using namespace std;
int n,m,k;
char grid[505][505];
bool valid(int x,int y){if(x>=1 && y>=1 && x<=n && y<=m && grid[x][y]!='#')return true;elsereturn false;
}
int main(){cin>>n>>m>>k;string op;cin>>op;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++)cin>>grid[i][j];}int ans=0;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(grid[i][j]=='#')continue;int x=i,y=j;bool ok=true;for(int l=0;l<k;l++){if(op[l]=='L')y--;else if(op[l]=='R')y++;else if(op[l]=='U')x--;elsex++;if(valid(x,y)){//看清条件ok=false;break;}}if(ok)ans++;}}cout<<ans<<endl;return 0;
}

Problem D:

有意思的数学题。

我们知道,从1到lcm(n,m)中,只有\frac{lcm(n,m)}{n}个可以被n整除,同理,有\frac{lcm(n,m)}{m}个可以被m整除。

而从1到lcm(n,m)中,只有lcm(n,m)可以同时被n和m整除。

再换句话说,从1到lcm(n,m)中有\frac{lcm(n,m)}{m}-1个只能被n整除,同理,有\frac{lcm(n,m)}{n}-1可以被m整除,所以,从1到lcm(n,m)中,有\frac{lcm(n,m)}{n}+\frac{lcm(n,m)}{m}-2个符合条件的数。所以,在每个长度为lcm(n,m)的区间内,都有那么多个满足条件的数(实在懒得打LaTeX了)。

综上,答案就是在第\left \lceil \frac{k}{a} \right \rceil个区间第k mod a小的数。

#include <bits/stdc++.h>
using namespace std;
long long lcm(long long x,long long y){return x*y/__gcd(x,y);
}
long long g(long long x,long long y){return lcm(x,y)/x+lcm(x,y)/y-2;
}
int main(){long long n,m,k;cin>>n>>m>>k;long long ans=k/g(n,m)*lcm(n,m);k%=g(n,m);if(k==0){cout<<ans-min(n,m)<<endl;return 0;}long long p=1,q=1;while(--k){//为什么这里写成k--不行啊if(n*p<m*q)p++;elseq++;}cout<<ans+min(n*p,m*q)<<endl;return 0;
}

顺便说一句,为什么19行不能写成k--啊,本蒟蒻调了半天,有知道的大佬可以在评论区告诉我,我将感激不尽。

E是线段树,就先咕了。

ok,以上就是本期的全部内容了。我们下期再见!

友情提示:本期的代码都有问题(除了D的代码),请不要无脑Ctrl C+Ctrl V

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

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

相关文章

week04day03(爬虫 beautifulsoup4、)

一. 使用bs4解析网页 下载bs4 - pip install beautifulsoup4 使用的时候 import bs4专门用于解析网页的第三方库 在使用bs4的时候往往会依赖另一个库lxml pip install lxml 网页代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><…

【Python笔记-设计模式】对象池模式

一、说明 用于管理对象的生命周期&#xff0c;重用已经创建的对象&#xff0c;从而减少资源消耗和创建对象的开销 (一) 解决问题 主要解决频繁创建和销毁对象所带来的性能开销问题。如数据库连接、线程管理、网络连接等&#xff0c;对象的创建和销毁成本相对较高&#xff0c…

冬眠...

链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 来源&#xff1a;牛客网 阿宁生活在一个 nnn 行 mmm 列的字符矩阵中&#xff0c;阿宁打算在第 xxx 行 yyy 列冬眠。 在每一天&#xff0c;都会有 qqq 次行循环移动或列循环移动。 如果是第 zzz 行循环移动&#xff0c;…

IC卡批量加密软件使用

IC卡出厂是默认的密码FFFFFFFFFFFF空白卡&#xff0c;IC卡在门禁、电梯、食堂消费、洗浴一卡通等系统上使用前是需要初始化的&#xff0c;即加密的同时写入基础数据。 为什么要用批量加密软件呢&#xff0c;以为需要加密的卡有几百张&#xff0c;几千张&#xff0c;数量比较多&…

shiro 整合 springmvc 实战及源码详解

序言 前面我们学习了如下内容&#xff1a; 5 分钟入门 shiro 安全框架实战笔记 shiro 整合 spring 实战及源码详解 相信大家对于 shiro 已经有了最基本的认识&#xff0c;这一节我们一起来学习写如何将 shiro 与 springmvc 进行整合。 spring mvc 整合源码 maven 依赖 版…

水务界的“数字蝶变”:水务公司重构自我,开启智慧供水新时代

历经六十余载的稳健前行&#xff0c;某水务公司已发展成为国有一档企业中的供水行业佼佼者&#xff0c;不仅主营业务突出&#xff0c;更拥有完善的产业链条。然而&#xff0c;面对供水业务24小时连续作业的高要求&#xff0c;以及业务管理需求的日益复杂化&#xff0c;公司意识…

Qt中添加Mysql驱动

qt连接mysql报错&#xff1a;QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7 - №点缀 - 博客园 (cnblogs.com)

【Django开发】0到1开发美多shop项目:Celery短信和用户注册。全md文档笔记(附代码,已分享)

本系列文章md笔记&#xff08;已分享&#xff09;主要讨论django商城项目开发相关知识。本项目利用Django框架开发一套前后端不分离的商城项目&#xff08;4.0版本&#xff09;含代码和文档。功能包括前后端不分离&#xff0c;方便SEO。采用Django Jinja2模板引擎 Vue.js实现…

Python网络爬虫实战:从入门到进阶

Python网络爬虫是一种自动化程序&#xff0c;用于从互联网上抓取、解析和提取数据。这种技术广泛应用于数据分析、机器学习、搜索引擎优化等领域。下面是一个Python网络爬虫的入门到进阶的实战指南&#xff1a; 入门篇 环境准备 安装Python和pip安装必要的库&#xff1a;reque…

突破编程_C++_高级教程(内存管理(1))

1 内存管理基础 C 的内存管理主要涉及如何分配、使用和释放计算机内存&#xff0c;以确保程序的正确运行和性能优化。其重要任务是避免内存泄漏和野指针等问题。 C 的内存管理是一个涉及多个方面和复杂概念的重要主题。正确地管理内存对于编写高效、稳定和安全的程序至关重要。…

网页403错误(Spring Security报异常 Encoded password does not look like BCrypt)

这个错误通常表现为"403 Forbidden"或"HTTP Status 403"&#xff0c;它指的是访问资源被服务器理解但拒绝授权。换句话说&#xff0c;服务器可以理解你请求看到的页面&#xff0c;但它拒绝给你权限。 也就是说很可能测试给定的参数有问题&#xff0c;后端…

学习Redis基础篇

1.初识Redis 1.认识NoSQL 2.认识Redis 3.连接redis命令 4.数据结构的介绍 5.通用命令 2.数据类型 1.String类型 常见命令&#xff1a;例子&#xff1a;set key value

Vue3实现页面顶部进度条

Vue3页面增加进度条 新建进度条组件新建bar.ts导航守卫中使用 Vue3项目使用导航守卫给页面增加进度条 新建进度条组件 loadingBar.vue <template><div class"wraps"><div ref"bar" class"bar"></div></div> <…

VSCODE上使用python_Django_创建最小项目

接上篇 https://blog.csdn.net/weixin_44741835/article/details/136135996?csdn_share_tail%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22136135996%22%2C%22source%22%3A%22weixin_44741835%22%7D VSCODE官网&#xff1a; Editing Python …

精酿啤酒:麦芽与啤酒花搭配的奥秘

麦芽和啤酒花是啤酒酿造过程中不可或缺的原料&#xff0c;它们的风味和特点对啤酒的口感和品质产生着深远的影响。Fendi Club啤酒在麦芽与啤酒花的搭配方面有着与众不同的技巧和见解&#xff0c;让啤酒的口感更加丰富和迷人。 首先&#xff0c;麦芽的选择是啤酒酿造的关键之一。…

mysql之CRUD常见函数union查询

select select * from c insert 字段设置自增后&#xff0c;当我们指定增加一条数据后&#xff0c;往后增加的数据都会在该条数据后进行递增&#xff0c;但是可以认为的指定增加某条id不存在的数据 insert into c values(7,‘政治’) insert into c(c2) values(‘历史1’),(…

springboot解决@Autowired注入service时出现循环依赖问题

在Spring Boot开发过程中&#xff0c;Autowired注入Service时出现循环依赖是一个常见问题。循环依赖指的是两个或多个Bean相互依赖&#xff0c;形成闭环&#xff0c;导致Spring容器无法正常初始化这些Bean。这里提供几种解决Spring Boot中Autowired注入Service时循环依赖问题的…

掌握网络未来:深入解析RSVP协议及其在确保服务质量中的关键作用

第一部分&#xff1a;RSVP简介 资源预留协议&#xff08;RSVP&#xff09;是一种网络协议&#xff0c;用于在网络中的各个节点之间预留资源&#xff0c;以支持数据流的服务质量&#xff08;QoS&#xff09;要求。RSVP特别适用于需要固定带宽和处理延迟的应用&#xff0c;如视频…

基于AT89C51单片机与DS18B20的温度测量系统

摘 要:DALLAS 公司的单总线数字温度传感器DSl8B20 以其线路简单、硬件开销少、成本低廉等一系列优点,有着无可比拟的应用前景。文章首先介绍了DSl8B20 的特性及工作原理。接着提出了一种基于AT89C51 单片机与DS18B20 的温度测量报警系统,分析了系统的硬件结构及软件设计。其…

Vue3 父子组件传参

父子组件传值 1. 父组件给子组件传值 —— v-bind 传递字符串类型&#xff0c;不需要加 v-bind&#xff08;:&#xff09; 传递非字符串类型&#xff0c;需要加 v-bind&#xff08;:&#xff09; 2. 子组件接收父组件的传值 —— defineProps 3.子组件给父组件传参&#xf…