AtCoder ABC371 A-D题解

news2024/10/1 11:16:37

省流:赛场上不会 C。

比赛链接:ABC371

Problem A:

Sol

if 暴力判断即可。

Code

#include <bits/stdc++.h>
using namespace std;
int main(){
	char SAB,SAC,SBC;
	cin>>SAB>>SAC>>SBC;
	if(SAB=='>' && SBC=='>')
		cout<<"b"<<endl;
	else if(SAB=='>' && SBC=='<' && SAC=='>')
		cout<<"c"<<endl;
	else if(SAB=='>' && SBC=='<' && SAC=='<')
		cout<<"a"<<endl;
	else if(SAB=='<' && SBC=='<')
		cout<<"b"<<endl;
	else if(SAB=='<' && SBC=='>' && SAC=='<')
		cout<<"c"<<endl;
	else if(SAB=='<' && SBC=='>' && SAC=='>')
		cout<<"a"<<endl;
	return 0;
}

Problem B:

Sol

简单哪一个数组记录即可。

Code

#include <bits/stdc++.h>
using namespace std;
bool have[105];
int main(){
	int N,M;
	cin>>N>>M;
	for(int i=1;i<=M;i++){
		int A;
		char B;
		cin>>A>>B;
		if(B=='M' && !have[A]){
			cout<<"yes"<<endl;
			have[A]=true;
		}
		else
			cout<<"no"<<endl;
	}
	return 0;
}

Problem D:

Sol

首先对村庄的位置离散化,用loc数组记录。然后用sum统计前缀和。然后在loc数组上二分L_iR_i后求前缀和即可。

Code

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn=200005;
struct village{
	int X;
	int P;
}country[maxn];
int loc[maxn],sum[maxn];
bool cmp(village a,village b){
	return a.X<b.X;
}
signed main(){
	int N;
	cin>>N;
	for(int i=1;i<=N;i++)
		cin>>country[i].X;
	for(int i=1;i<=N;i++)
		cin>>country[i].P;
	sort(country+1,country+N+1,cmp);
	for(int i=1;i<=N;i++){
		loc[i]=country[i].X;
		sum[i]=country[i].P+sum[i-1];
		cout<<sum[i]<<' ';
	}
	int Q;
	cin>>Q;
	while(Q--){
		int L,R;
		cin>>L>>R;
		int l=lower_bound(loc+1,loc+N+1,L)-loc;
		int r=upper_bound(loc+1,loc+N+1,R)-loc-1;
		if(l>r || (l==N+1 && r==N+1)){
			cout<<0<<endl;
			continue;
		}
		if(l==N+1)
			l=N;
		if(r==N+1)
			r=N;
		cout<<sum[r]-sum[l-1]<<endl;
	}
	return 0;
}

Problem C:

Sol

注意到本题N\leq 8,可以全排列枚举所有情况,取最小值。时间复杂度 \Theta (n!)

Code

#include <bits/stdc++.h>
using namespace std;
const int maxn=105;
const int INF=0x3f3f3f3f;
int N,MG,MH,u1[maxn],a1[maxn],v1[maxn],b1[maxn],A[maxn][maxn];
int h[maxn][maxn],g[maxn][maxn],mark[maxn],ans=INF;
void dfs(int pos){
	if(pos>N){
		for(int i=1;i<=MG;i++)
			h[mark[u1[i]]][mark[v1[i]]]=h[mark[v1[i]]][mark[u1[i]]]=1;
		int sum=0;
		for(int i=1;i<N;i++){
			for(int j=i+1;j<=N;j++){
				if(h[i][j]==g[i][j])
					continue;
				sum+=A[i][j];
			}
		}
		ans=min(ans,sum);
		memset(h,0,sizeof(h));
		return;
	}
	for(int i=1;i<=N;i++){
		if(!mark[i]){
			mark[i]=pos;
			dfs(pos+1);
			mark[i]=0;
		}
	}
}
int main(){
	cin>>N;
	cin>>MG;
	for(int i=1;i<=MG;i++)
		cin>>u1[i]>>v1[i];
	cin>>MH;
	for(int i=1;i<=MH;i++){
		cin>>a1[i]>>b1[i];
		g[a1[i]][b1[i]]=g[b1[i]][a1[i]]=1;
	}
	for(int i=1;i<N;i++){
		for(int j=i+1;j<=N;j++){
			cin>>A[i][j];
			A[j][i]=A[i][j];
		}
	}
	dfs(1);
	cout<<ans<<endl;
	return 0;
}

友情提醒:不要无脑Ctrl C+Ctrl V

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

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

相关文章

【Unity踩坑】使用内购时获取Google Play license key

在Unity中使用了IAP&#xff08;内购&#xff09;后&#xff0c;需要设置Google Play license key。 这个key需要在Google Play Console中&#xff08;https://play.google.com/console&#xff09;&#xff0c;找到相应的应用&#xff0c;在左侧“创收设置”里可以找到license…

堆【数据结构C语言版】【 详解】

目录-笔记整理 一、思考二、堆概念与性质三、堆的构建、删除、添加1. 构建2. 删除3. 添加 四、复杂度分析4.1 时间复杂度4.2 空间复杂度 五、总结 一、思考 设计一种数据结构&#xff0c;来存放整数&#xff0c;要求三个接口&#xff1a; 1&#xff09;获取序列中的最值&#…

AI面试指南:AI工具总结评测,助力求职季

AI面试指南&#xff1a;AI工具总结评测&#xff0c;助力求职季 摘要&#xff1a; 在竞争激烈的AI领域秋招季&#xff0c;准备充分并借助高效工具是提升面试通过率的关键。本文主要介绍一些针对秋招的AI面试工具和学习资源&#xff0c;分为简历优化、面试助手、手撕代码练习三个…

Thinkphp/Laravel旅游景区预约系统的设计与实现

目录 技术栈和环境说明具体实现截图设计思路关键技术课题的重点和难点&#xff1a;框架介绍数据访问方式PHP核心代码部分展示代码目录结构解析系统测试详细视频演示源码获取 技术栈和环境说明 采用PHP语言开发&#xff0c;开发环境为phpstudy 开发工具notepad并使用MYSQL数据库…

ue4多个面重叠闪烁

描述&#xff1a;当多个面重叠的时候&#xff0c;出现闪烁。比如有三个面ABC&#xff0c;A在最底下&#xff0c;B在中间&#xff0c;C在最上面。 解决方案&#xff1a; 方案一&#xff1a; 方法&#xff1a;调整位置&#xff0c;A的Z为0&#xff0c;B的Z为0.01&#xff0c;C的…

2021、2022、2023年江苏省“领航杯”_CTF竞赛_MISC/WEB—部分WP

文章目录 一、前言工具及附件分享 二、MICS1、MICS-小明的困惑2、MICS-流量分析3、MISC-神奇的压缩4、MICS-SecertData5、MISC-我要这key有何用6、MICS-黑客流量分析7、MISC-女儿的秘密8、MICS-snow9、MICS-jsfuck 三、WEB1、WEB- ctf_xxe2、WEB- ctf_uuunserialize3、WEB-ctf_…

无心剑七绝《华夏中兴》

七绝华夏中兴 长空万里尽春声 治世群英喜纵横 一代雄才华夏梦 中兴日月照前程 2024年10月1日 平水韵八庚平韵 无心剑的七绝《华夏中兴》通过对自然景观和国家景象的描绘&#xff0c;展现了一种恢弘的气势和对未来的美好愿景。 意境开阔&#xff1a;首句“长空万里尽春声”以广阔…

SpringBoot2(Spring Boot 的Web开发 springMVC 请求处理 参数绑定 常用注解 数据传递 文件上传)

SpringBoot2&#xff08;Spring Boot 的Web开发 springMVC 请求处理 参数绑定 常用注解 数据传递 文件上传&#xff09; 一、Spring Boot的Web开发 1.静态资源映射规则 总结&#xff1a;只要静态资源放在类路径下&#xff1a; called /static (or /public or /resources or …

启动服务并登录MySQL9数据库

【图书推荐】《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;》-CSDN博客 《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) Windows平台下安装与配置MyS…

第168天:应急响应-ELK 日志分析系统Yara规则样本识别特征提取规则编写

目录 案例一&#xff1a;ELK 搭建使用-导入文件&监控日志&语法筛选 案例二&#xff1a;Yara 规则使用-规则检测&分析特征&自写规则 案例一&#xff1a;ELK 搭建使用-导入文件&监控日志&语法筛选 该软件是专业分析日志的工具&#xff0c;但是不支持安…

带你0到1之QT编程:二十一、QChart类图表及曲线图的实战指南

此为QT编程的第二十一谈&#xff01;关注我&#xff0c;带你快速学习QT编程的学习路线&#xff01; 每一篇的技术点都是很很重要&#xff01;很重要&#xff01;很重要&#xff01;但不冗余&#xff01; 我们通常采取总-分-总和生活化的讲解方式来阐述一个知识点&#xff01;…

华为OD机试 - 最长元音子串的长度(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试真题&#xff08;Python/JS/C/C&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;私信哪吒&#xff0c;备注华为OD&#xff0c;加入华为OD刷题交流群&#xff0c;…

Github 2024-10-01 开源项目月报 Top20

根据Github Trendings的统计,本月(2024-10-01统计)共有20个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量TypeScript项目6Python项目6C项目2JavaScript项目2Rust项目1Shell项目1Ruby项目1HTML项目1Go项目1Jupyter Notebook项目1Lobe Chat: 开源ChatGP…

【C语言】字符和字符串函数(2)

文章目录 一、strncpy函数的使用二、strncat函数的使用三、strncmp函数的使用四、strstr的使用和模拟实现五、strtok函数的使用六、strerr函数的使用 一、strncpy函数的使用 我们之前学习的strcpy的作用是把源字符串拷贝到目标空间内&#xff0c;而且经过我们的模拟实现&#x…

智能招聘系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;企业管理&#xff0c;招聘信息管理&#xff0c;应聘信息管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;招聘信息&#xff0c;我的 开发系统&#…

企望制造ERP系统存在RCE漏洞

漏洞描述 企望制造纸箱业erp系统由深知纸箱行业特点和业务流程的多位IT专家打造&#xff0c;具有国际先进的管理方式&#xff0c;将现代化的管理方式融入erp软件中&#xff0c;让企业分分钟就拥有科学的管理经验。erp的功能包括成本核算、报价定价、订单下达、生产下单、现场管…

鸿蒙NEXT开发环境搭建(基于最新api12稳定版)

注意&#xff1a;博主有个鸿蒙专栏&#xff0c;里面从上到下有关于鸿蒙next的教学文档&#xff0c;大家感兴趣可以学习下 如果大家觉得博主文章写的好的话&#xff0c;可以点下关注&#xff0c;博主会一直更新鸿蒙next相关知识 专栏地址: https://blog.csdn.net/qq_56760790/…

【设计模式-命令】

定义 命令模式&#xff08;Command Pattern&#xff09;是一种行为设计模式&#xff0c;它将请求封装为一个对象&#xff0c;从而使您能够使用不同的请求、排队请求或记录请求&#xff0c;并支持可撤销的操作。该模式通过将请求与其执行分离&#xff0c;使得请求者和接收者之间…

养生之道,首先在于饮食!

在快节奏的现代生活中&#xff0c;养生健康成为了人们日益关注的话题。良好的生活习惯和科学的养生方式&#xff0c;不仅能够提升我们的生活质量&#xff0c;还能有效预防疾病&#xff0c;让我们拥有更加充沛的精力和更长久的生命力。 养生之道&#xff0c;首先在于饮食。均衡…

cpp,git,unity学习

c#中的? 1. 空值类型&#xff08;Nullable Types&#xff09; ? 可以用于值类型&#xff08;例如 int、bool 等&#xff09;&#xff0c;使它们可以接受 null。通常&#xff0c;值类型不能为 null&#xff0c;但是通过 ? 可以表示它们是可空的。 int? number null; // …