ACGO愚人节欢乐赛#18

news2024/11/24 11:07:36

念旧的人,注定被困在回忆里

解题思路:

将数组升序排序,然后找每m个数的最大值减最小值的最小值,如不不排序直接判断的话,不能保证最优解。注意判断每m个数时都要赋值初值,避免影响结果

下面是c++代码:

#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
int main()
{
	int m, n;
	cin >> m >> n;
	int* arr = new int[n];
	for (int i = 0; i < n; i++) {
		cin >> arr[i];
	}
	sort(arr, arr + n);
	int Min = 10e9, minn = 10e9, maxx = 0;
	for (int i = 0; i <= n - m; i++) {
		minn = 10e9, maxx = 0;
		for (int j = i; j < i + m; j++) {
			minn = min(minn, arr[j]);
			maxx = max(maxx, arr[j]);
		}
		Min = min(Min, maxx - minn);
	}
	cout << Min;
	return 0;
}

解题思路:

判断每个字符是否是小写字母,存到map或者set集合里,返回集合长度即可,注意字符串里有空格,所以不能用cin读入字符串,cin读入空格就会结束,所以可以用getline来读入字符串。

下面是c++代码:

#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
int main()
{
	string s;
	map<char, int>mp;
	getline(cin,s);
	for (int i = 0; i < s.length(); i++) {
		if (s[i] != ' ' && s[i] != ',' && s[i] != '\{' && s[i] != '\}') {
			mp[s[i]]++;
		}
	}
	cout << mp. size();
	return 0;
}

解题思路:

从头遍历找最大值索引,从尾遍历找最小值索引,如果最大值索引小于最小值所以,直接加上最大值索引到头的距离和最小值到尾的距离的和,否则再减一,因为两者有交集重复计算了

下面是c++代码:

#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
int main()
{
	int n, sum = 0;
	cin >> n;
	int* arr = new int[n];
	for (int i = 0; i < n; i++) {
		cin >> arr[i];
	}
	int max = arr[0], mindex = 0;
	for (int i = 0; i < n; i++) {
		if (max < arr[i]) {
			max = arr[i];
			mindex = i;
		}
	}
	int min = arr[n - 1], mmindex = n - 1;
	for (int i = n - 1; i >= 0; i--) {
		if (min > arr[i]) {
			min = arr[i];
			mmindex = i;
		}
	}
	if (mindex > mmindex) {
		cout << mindex + n - 1 - mmindex - 1;
	}
	else {
		cout << mindex + n - 1 - mmindex;
	}
	return 0;
}

解题思路:

依次遍历,相同输出0,不同为1

下面是c++代码:

#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
int main()
{
	string s1, s2;
	cin >> s1 >> s2;
	for (int i = 0; i < s1.length(); i++) {
		if (s1[i] != s2[i]) {
			cout << 1;
		}
		else {
			cout << 0;
		}
	}
	return 0;
}

解题思路:

两个数组,一个数组存要送给谁,一个存谁送给了当前索引的小朋友

下面是c++代码:

#include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
int main()
{
	int n;
	cin >> n;
	int* arr = new int[n + 1];
	int* brr = new int[n + 1];
	for (int i = 1; i <= n; i++) {
		cin >> arr[i];
	}
	for (int i = 1; i <= n; i++) {
		brr[arr[i]] = i;//brr数组表示收到了谁的礼物
	}
	for (int i = 1; i <= n; i++) {
		cout << brr[i] << " ";
	}
	return 0;
}

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

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

相关文章

光明源@智慧厕所公厕软件系统有哪些核心功能?

在现代城市的建设中&#xff0c;智慧公厕的建设成为了提升城市品质和居民生活质量的重要举措。而智慧公厕的核心&#xff0c;不仅仅在于其硬件设备的智能化&#xff0c;同样重要的是其背后支持的智慧厕所公厕软件系统。让我们一起探讨&#xff0c;智慧厕所公厕软件系统有哪些核…

深度学习基础模型之Mamba

Mamba模型简介 问题&#xff1a;许多亚二次时间架构(运行时间复杂度低于O(n^2)&#xff0c;但高于O(n)的情况)&#xff08;例如线性注意力、门控卷积和循环模型以及结构化状态空间模型&#xff08;SSM&#xff09;&#xff09;已被开发出来&#xff0c;以解决 Transformer 在长…

【C++】C++入门第一课(c++关键字 | 命名空间 | c++输入输出 | 缺省参数)

目录 前言 C关键字 命名空间 1.命名空间的定义 A.标准命名空间定义 B.命名空间允许嵌套定义 C.同名命名空间的合并 2.命名空间的使用 加命名空间名称及作用限定符 使用using将命名空间中某个成员引入 使用using namespace命名空间名称引入 C的输入和输出 缺省参数…

【LeetCode热题100】739. 每日温度(栈)

一.题目要求 给定一个整数数组 temperatures &#xff0c;表示每天的温度&#xff0c;返回一个数组 answer &#xff0c;其中 answer[i] 是指对于第 i 天&#xff0c;下一个更高温度出现在几天后。如果气温在这之后都不会升高&#xff0c;请在该位置用 0 来代替。 二.题目难度…

上位机图像处理和嵌入式模块部署(qmacvisual图像拼接)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 qmacvisual本身提供了图像拼接的功能。功能本身比较有意思的。大家如果拍过毕业照&#xff0c;特别是那种几百人、上千人的合照&#xff0c;应该就…

基于SpringBoot的“校园志愿者管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“校园志愿者管理系统”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体结构图 系统首页界面图 志愿者注册…

数据分析之POWER Piovt透视表分析

将几个数据表之间进行关联 生成数据透视表 超级透视表这里的字段包含子字段 这三个月份在前面的解决办法 1.选中这三个月份&#xff0c;鼠标可移动的时候移动到后面 2.在原数据进行修改 添加列获取月份&#xff0c;借助month的函数双击日期 选择月份这列----按列排序-----选择月…

记录rocketMQ5.+启动报错解决过程

1.根据官方文档指引下载对应的rocketMQ源码包&#xff0c;上传到服务器解压 2. 启动NameServer nohup sh bin/mqnamesrv & 验证namesrv是否启动成功 tail -f ~/logs/rocketmqlogs/namesrv.log The Name Server boot success… 3.启动BrokerProxy nohup sh bin/mqbroker -n …

活动图高阶讲解-14

37 00:02:26,000 --> 00:02:32,000 接下来&#xff0c;我们看下一个知识点&#xff0c;就是决策 38 00:02:32,000 --> 00:02:38,000 就是令牌的一种什么, 39 00:02:38,000 --> 00:02:42,000 一种分流, 40 00:02:42,000 --> 00:02:47,000 它走哪个流, 41 00:02:…

C语言函数间参数传递

在C语言中&#xff0c;函数是程序的基本组成单元之一&#xff0c;而参数传递则是函数间交换信息的重要方式之一。本文将探讨C语言中函数间参数传递的各种方式及其特点。 以下是我整理的关于C语言的一些入门级资料&#xff0c;免费分享给大家&#xff1a;https://m.hqyjai.net/…

怎么让ChatGPT批量写作原创文章

随着人工智能技术的不断发展&#xff0c;自然语言处理模型在文本生成领域的应用也日益广泛。ChatGPT作为其中的佼佼者之一&#xff0c;凭借其强大的文本生成能力和智能对话特性&#xff0c;为用户提供了一种高效、便捷的批量产出内容的解决方案。以下将就ChatGPT批量写作内容进…

GeoLite2 geoip数据库下载和使用

GeoLite2 数据库是免费的 IP 地理定位数据库&#xff0c;与MaxMind 的 GeoIP2 数据库相当&#xff0c;但准确度较低 。GeoLite2 国家、城市和 ASN 数据库 每周更新两次&#xff0c;即每周二和周五。GeoLite2 数据还可作为 GeoLite2 Country 和 GeoLite2 City Web 服务中的 Web …

学习transformer模型-权重矩阵Wq,Wk,Wv的困扰和解析

背景&#xff1a; 学习transformer模型&#xff0c;计算multiHead attention的时候&#xff0c;权重矩阵Wq&#xff0c;Wk&#xff0c;Wv给我造成了很大的困扰&#xff1a; 1&#xff0c;为啥要需要W*&#xff1f; 2&#xff0c;这个W*是从哪里来的&#xff1f; 搜索了各种信…

Python-VBA编程500例-027(入门级)

验证字符串能否转换(Verify Whether A String Can Be Converted)在多个实际应用场景中扮演着重要角色。常见的应用场景有&#xff1a; 1、数据清洗与预处理&#xff1a;在数据处理和分析过程中&#xff0c;原始数据可能包含格式错误、多余字符或不符合规范的内容。验证字符串…

『Apisix系列』破局传统架构:探索新一代微服务体系下的API管理新范式与最佳实践

文章目录 『Apisix基石篇』『Apisix入门篇』『Apisix进阶篇』『Apisix安全篇』 『Apisix基石篇』 &#x1f680; 手把手教你从零部署APISIX高性能API网关 利用Docker-compose快速部署Apache APISIX及其依赖组件&#xff0c;实现高效的API网关搭建通过编写RPM安装脚本来自动化安…

love 2d win 下超简单安装方式,学习Lua 中文编程 刚需!!

一、下载love 2d 参考&#xff1a;【Love2d从青铜到王者】第一篇:Love2d入门以及安装教程 或直接下载&#xff1a; 64位&#xff0c;现在一般电脑都可以用。 64-bit zipped 32位&#xff0c;很复古的电脑都可以用。 32-bit zipped 二、解压 下载好了之后&#xff0c;解压到…

54 npm run serve 和 npm run build 输出的关联和差异

前言 通常来说 我们开发的时候一般会用到的命令是 “npm run serve”, “npm run build” 前者会编译当前项目, 然后将编译之后的结果以 node 的形式启动一个服务, 暴露相关业务资源, 因此 我们可以通过 该服务访问到当前项目 后者是编译当前项目, 然后做一下最小化代码的优…

机器学习—— PU-Learning算法

机器学习—— PU-Learning算法 本篇博客将介绍PU-Learning算法的基本概念、基本流程、基本方法&#xff0c;并简单探讨Two-step PU Learning算法和无偏PU Learning算法的具体流程。最后&#xff0c;将通过Python代码实现一个简单的PU-Learning示例&#xff0c;以便更好地理解这…

动态规划——回文串问题

目录 练习1&#xff1a;回文子串 练习2&#xff1a;最长回文子串 练习3&#xff1a;回文串分割IV 练习4&#xff1a;分割回文串 练习5&#xff1a;最长回文子序列 练习6&#xff1a;让字符串成为回文串的最小插入次数 本篇文章主要学习使用动态规划来解决回文串相关问题&…

【C#】知识点速通

前言&#xff1a; 笔者是跟着哔站课程&#xff08;Trigger&#xff09;学习unity才去学习的C#&#xff0c;并且C语言功底尚存&#xff0c;所以只是简单地跟着课程将unity所用的C#语言的关键部分进行了了解&#xff0c;然后在后期unity学习过程中加以深度学习。如需完善的C#知识…