AtCoder Beginner Contest 331

感觉和cf div3差不多。

A - Tomorrow

签到,D和M是一年有D月M天,输入ymd输出ym[d+1],如果d+1>D了显然要m++,模拟即可。

#include <bits/stdc++.h>
//#define int long long
#define fr first
#define se second
#define endl '\n'
using namespace std;int M,D,y,m,d;void solve(){cin>>M>>D>>y>>m>>d;d++;while(d>D)d-=D,m++;while(m>M)m-=M,y++;cout<<y<<" "<<m<<" "<<d<<endl;
}signed main(){ios::sync_with_stdio(false),cin.tie(nullptr);int t=1;while(t--)solve();return 0;
}

B - Buy One Carton of Milk

题目大意:6个蛋S元,8个蛋M元,12个蛋L元,花最少的钱买到至少N个蛋,输出最少的钱。

范围给的很小,搜索一下就ok

#include <bits/stdc++.h>
//#define int long long
#define fr first
#define se second
#define endl '\n'
using namespace std;int n,s,m,l,ans=INT_MAX;void dfs(int a,int b,int c,int cost,int cnt){if(cost>=ans)return;if(cnt>=n){ans=min(ans,cost);return ;}dfs(a+1,b,c,cost+s,cnt+6);dfs(a,b+1,c,cost+m,cnt+8);dfs(a,b,c+1,cost+l,cnt+12);
}void solve(){cin>>n>>s>>m>>l;//6个蛋s元,8个蛋m元,12个蛋l元//花最少的钱买到至少n个蛋dfs(0,0,0,0,0);cout<<ans<<endl;
}signed main(){ios::sync_with_stdio(false),cin.tie(nullptr);int t=1;while(t--)solve();return 0;
}

C - Sum of Numbers Greater Than Me

题目大意:给你一个序列A,对于A1,输出A2~An中大于A1的和,其他的类推。

序列范围大小1e5,两个for过不了,发现序列的值小于1e6,开另一个数组差分优化。

数x可以对1~x-1产生贡献x,那么b[1]+=x,b[x]-=x,最后遍历一遍输出。

#include <bits/stdc++.h>
#define int long long
#define fr first
#define se second
#define endl '\n'
using namespace std;const int N=2e5+5,A=1e6+5;
int n,a[N],b[A];
map<int,int>f;//b[i]=j,代表比i大的数之和为jvoid solve(){cin>>n;for(int i=1;i<=n;++i){cin>>a[i];b[1]+=a[i],b[a[i]]-=a[i];}for(int i=1,t=0;i<=A;++i){t+=b[i];f[i]=t;}for(int i=1;i<=n;++i)cout<<f[a[i]]<<" ";
}signed main(){ios::sync_with_stdio(false),cin.tie(nullptr);int t=1;while(t--)solve();return 0;
}

D - Tile Pattern

感觉是二维分块,左上角到右下角有几个完整块先算出来,剩下的小块for跑一遍。

vp的时候没做,直接跳过了(做不来)过会补

E - Set Meal 

题目大意:给你序列A,序列B,在序列A中选一个x,B中选一个y,要求x+y最大,同时x和y没有被禁止。

两个for跑一遍直接爆了,因为要最大的可以把B升序排序(注意保留原来下标顺序)。

直接逆序遍历B找到可以配对的更新一下答案,然后break。

因为最多有L个被禁止配对,所以看起来是两重for,实际上两重循环复杂度是L。

// LUOGU_RID: 138251069
#include <bits/stdc++.h>
//#define int long long
#define fr first
#define se second
#define endl '\n'
using namespace std;const int N=1e5+5;
int n,m,l,ans=INT_MIN;
map<pair<int,int>,bool>f;//不提供的
struct Node{int idx,val;
}a[N],b[N];bool cmp(Node a,Node b){return a.val<b.val;
}void solve(){cin>>n>>m>>l;for(int i=1;i<=n;++i){cin>>a[i].val;a[i].idx=i;}for(int i=1;i<=m;++i){cin>>b[i].val;b[i].idx=i;}for(int i=1,A,B;i<=l;++i){cin>>A>>B;f[{A,B}]=true;}sort(b+1,b+1+m,cmp);for(int i=1;i<=n;++i){for(int j=m;j>=1;--j){if(!f[{i,b[j].idx}]){ans=max(ans,a[i].val+b[j].val);break;}}}cout<<ans<<endl;
}signed main(){ios::sync_with_stdio(false),cin.tie(nullptr);int t=1;while(t--)solve();return 0;
}

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

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

相关文章

前端知识笔记(三十)———前端需要掌握的技术有哪些方面

上一篇文章说了些前端这个岗位在整个项目开发过程中的重要性&#xff0c;那么&#xff0c;下面我们来谈谈前端在做项目时需要掌握的技术有哪些方面&#xff1f; 前端开发需要掌握的技术包括以下几个方面&#xff1a; 1.HTML&#xff1a;HTML是网页的基础骨架&#xff0c;是网…

拼多多电商平台API接口,获取拼多多实时准确数据,获取产品销量、价格,sku图片及sku库存数据演示

拼多多商品详情API接口的作用是让开发者可以获取拼多多平台上特定商品的详细信息&#xff0c;包括商品的标题、价格、图片、规格、参数以及店铺信息等。通过这个接口&#xff0c;开发者可以轻松地获取商品的原始数据&#xff0c;便于进行数据分析、价格比较、爬取等操作。这为电…

大数据之HBase(二)

Master详细架构 位置&#xff1a;namenode实现类&#xff1a;HMaster组成 负载均衡器&#xff1a;通过meta了解region的分配&#xff0c;通过zk了解rs的启动情况&#xff0c;5分钟调控一次分配平衡元数据表管理器&#xff1a;管理自己的预写日志&#xff0c;如果宕机&#xff…

JavaWeb(六)

一、Maven的常用命令 maven的常用命令有:compile(编译)、clean(清理)、test(测试)、package(打包)、install(安装)。 1.1、compile(编译) compile(编译)的作用有如下两点: 1、从阿里云下载编译需要的jar包&#xff0c;在本地仓库也能看到下载好的插件(远程仓库配置的是阿里…

寻找两个有序数组的中位数算法(leetcode第4题)

题目描述&#xff1a; 给定两个大小分别为 m 和 n 的正序&#xff08;从小到大&#xff09;数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (mn)) 。 示例 1&#xff1a; 输入&#xff1a;nums1 [1,3], nums2 [2] 输出&…

【数值计算方法(黄明游)】函数插值与曲线拟合(二):Newton插值【理论到程序】

​ 文章目录 一、近似表达方式1. 插值&#xff08;Interpolation&#xff09;2. 拟合&#xff08;Fitting&#xff09;3. 投影&#xff08;Projection&#xff09; 二、Lagrange插值1. 拉格朗日插值方法2. Lagrange插值公式a. 线性插值&#xff08;n1&#xff09;b. 抛物插值&…

JavaWeb 前端工程化

前端工程化是使用软件工程的方法来单独解决前端的开发流程中模块化、组件化、规范化、自动化的问题,其主要目的为了提高效率和降低成本。 前端工程化实现技术栈 前端工程化实现的技术栈有很多,我们采用ES6nodejsnpmViteVUE3routerpiniaaxiosElement-plus组合来实现 ECMAScri…

Rust语言项目实战(九 - 完结) - 胜利与失败

回顾 在前面的章节中,我们已经实现了这个游戏中大部分的模块和功能,我们可以指挥我们的战机左右移动,并发射子弹;我们还创造了一堆的侵略者,从屏幕上方缓缓降落,试图到达屏幕的底部。 本章中,我们将对游戏的输赢作出最后的裁决,到底是我们的保卫者英勇无敌,还是侵略…

glibc下的tpmalloc

文章目录 1、内存布局2、操作系统内存分配的相关函数2.1 Heap 操作相关函数2.2 Mmap 映射区域操作相关函数 3、ptmalloc的实现原理3.1 Main_arena 与 non_main_arena3.2 chunk 结构3.3 空闲 chunk 容器的组织形式3.3.1 small bin3.3.2 Large bins3.3.3 Unsorted bin3.3.4 Fast …

如何使用Cloudreve搭建本地云盘系统并实现随时远程访问

文章目录 1、前言2、本地网站搭建2.1 环境使用2.2 支持组件选择2.3 网页安装2.4 测试和使用2.5 问题解决 3、本地网页发布3.1 cpolar云端设置3.2 cpolar本地设置 4、公网访问测试5、结语 1、前言 自云存储概念兴起已经有段时间了&#xff0c;各互联网大厂也纷纷加入战局&#…

关于1panel面板中OpenResty配置证书的格式问题探究

文章目录 说明ssl证书格式CRT&PEM转换方法linux系统win系统 问题&#xff1a; ASN.1 编码错误补充&#xff1a;DER和pem编码格式 说明 armbian中使用OpenResty进行反向代理&#xff0c;配置ssl证书&#xff0c;但是由于和官网申请的证书内容格式内容不太一样&#xff0c;所…

深入浅出理解kafka

1.Kafka简介 Kafka 本质上是一个 MQ&#xff08;Message Queue&#xff09;&#xff0c;使用消息队列的优点&#xff1a; 解耦&#xff1a;允许独立的扩展或修改队列两边的处理过程。可恢复性&#xff1a;即使一个处理消息的进程挂掉&#xff0c;加入队列中的消息仍然可以在系…

利用 FormData 实现文件上传、监控网路速度和上传进度(前端原生,后端 koa)

利用 FormData 实现文件上传 基础功能&#xff1a;上传文件 演示如下&#xff1a; 概括流程&#xff1a; 前端&#xff1a;把文件数据获取并 append 到 FormData 对象中后端&#xff1a;通过 ctx.request.files 对象拿到二进制数据&#xff0c;获得 node 暂存的文件路径 前端…

编程语言中常量(Constant)简介

编程语言中常量&#xff08;Constant&#xff09;简介 编程语言中&#xff0c;常量&#xff08;Constant&#xff09;是程序中固定不变的值&#xff0c;它们在定义后不能被修改。“不能被修改”意味着在常量的生命周期内&#xff0c;它的值是不可变的&#xff0c;你不能再给它赋…

【latex笔记】双栏格式下插入单栏、双栏格式图片

双栏格式下插入单栏、双栏格式图片 1.缘起multicols2.双栏格式 插入单栏图片3.双栏格式 插入双栏图片 1.缘起multicols 插入双栏格式图片问题被困扰了有很长一段时间&#xff0c;查看网络资源也一直没找到解决方法&#xff0c;今天查看Latex官方文档&#xff0c;才发现因为mul…

搜索引擎高级用法总结: 谷歌、百度、必应

搜索引擎高级用法总结: 谷歌、百度、必应 google search 基本搜索 逻辑与:and逻辑或: or逻辑非: -完整匹配:“关键词”通配符:* ?高级搜索 intext:后台登录 将只返回正文中包含 后台登录 的网页 intitle intitle:后台登录 将只返回标题中包含 后台登录 的网页,intitle…

探索图像生成中的生成对抗网络 (GAN) 世界

一、介绍 生成对抗网络&#xff08;GAN&#xff09;的出现标志着人工智能领域的一个重要里程碑&#xff0c;特别是在图像生成领域。GAN 由 Ian Goodfellow 和他的同事于 2014 年提出&#xff0c;代表了机器学习中的一种新颖方法&#xff0c;展示了生成高度逼真和多样化图像的能…

基于AWS Serverless的Glue服务进行ETL(提取、转换和加载)数据分析(一)——创建Glue

1 通过Athena查询s3中的数据 此实验使用s3作为数据源 ETL: E extract 输入 T transform 转换 L load 输出 大纲 1 通过Athena查询s3中的数据1.1 架构图1.2 创建Glue数据库1.3 创建爬网程序1.4 创建表1.4.1 爬网程序创建表1.4.2 手动创建表 1…

剑指 Offer(第2版)面试题 16:数值的整数次方

剑指 Offer&#xff08;第2版&#xff09;面试题 16&#xff1a;数值的整数次方 剑指 Offer&#xff08;第2版&#xff09;面试题 16&#xff1a;数值的整数次方解法1&#xff1a;快速幂 - 递归写法解法2&#xff1a;快速幂 - 非递归写法 剑指 Offer&#xff08;第2版&#xff…

【STM32】STM32学习笔记-GPIO输出(05)

00. 目录 文章目录 00. 目录01. GPIO简介02. GPIO基本结构03. GPIO位结构04. GPIO模式4.1 输入浮空4.2 输入上拉4.3 输入下拉4.4 模拟输入4.5 开漏输出4.6 开漏复用功能4.7 推挽式输出4.8 推挽式复用功能 05. LED和蜂鸣器简介06. 面包板07. 附录 01. GPIO简介 GPIO&#xff08…