C++笔试强训day22

news2024/9/25 15:23:03

目录

1.添加字符

2.数组变换

3.装箱问题

常规一维优化:


1.添加字符

链接

因为lenA  <= lenB <= 50,因此可以无脑暴力解题:

遍历所有符合条件的匹配方法,找出最小的不同的数量,即最大的相同的数量

#include <iostream>
using namespace std;
int main() {
	string A;
	string B;
	cin >> A >> B;
	int c1 = A.size();
	int c2 = B.size();
	int cnt = 0;
	if (c1 == c2)
	{
		for (int i = 0; i < c1; i++)
		{
			if (A[i] != B[i])
				cnt++;
		}
		cout << cnt << endl;
	}
	else
	{
		int dif = c2 - c1;
		int max_n = 0;
		for (int i = 0; i <= dif; ++i)
		{	
			cnt = 0;
			int j = 0;
			int k = i;
			while (j < c1)
			{
				if (A[j] == B[k])
					cnt++;
				j++;
				k++;
			}
			max_n = max(max_n, cnt);
		}
		cout << c1 - max_n << endl;
	}
	return 0;
}

2.数组变换

链接

判断是否为2的n次方就好了。

#include <iostream>
using namespace std;
int arr[60];
int main() {
	int n;
	cin >> n;
	int maxn = 0;
	int x;
	for (int i = 1; i <= n; ++i)
	{
		cin >> x;
		arr[i] = x;
		maxn = max(maxn, x);
	}
	for (int i = 1; i <= n; ++i)
	{
		if (!((maxn / arr[i]) % 2 == 0 || arr[i] == maxn))
		{
			cout << "NO" << endl;
			return 0;
		}
	}
	cout << "YES" << endl;
	return 0;
}

3.装箱问题

链接

01背包dp问题:

讲题意逆向转化为使装入的体积最大更好求解,最后返回时返回V - dp[n][V]即可。

#include <iostream>
using namespace std;

int V, n;
int v[20010];
int dp[40][20010];
int main()
{
	cin >> V >> n;
	for (int i = 1; i <= n; ++i)
		cin >> v[i];
	
	// 填表
	for (int i = 1; i <= n; ++i)
	{
		for (int j = 1; j <= V; ++j)
		{
			dp[i][j] = dp[i - 1][j];
			if (j >= v[i])
				dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - v[i]] + v[i]);
		}
	}
	cout << V - dp[n][V] << endl;
	return 0;
}
常规一维优化:
#include <iostream>
using namespace std;

int V, n;
int v[20010];
int dp[20010];
int main()
{
	cin >> V >> n;
	for (int i = 1; i <= n; ++i)
		cin >> v[i];
	
	// 填表
	for (int i = 1; i <= n; ++i)
		for (int j = V; j >= v[i]; --j)
				dp[j] = max(dp[j], dp[j - v[i]] + v[i]);

	cout << V - dp[V] << endl;
	return 0;
}

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

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

相关文章

Python-VBA函数之旅-vars函数

目录 一、vars函数的常见应用场景 二、vars函数使用注意事项 三、如何用好vars函数&#xff1f; 1、vars函数&#xff1a; 1-1、Python&#xff1a; 1-2、VBA&#xff1a; 2、推荐阅读&#xff1a; 个人主页&#xff1a;https://myelsa1024.blog.csdn.net/ 一、vars函数…

Redis-分布式锁实现方式

文章目录 Redis分布式锁的作用&#xff1f;Redis分布式锁的底层原理实现&#xff1f;Redis分布式锁的应用场景&#xff1f;Redis分布式锁遇到相关的场景问题&#xff1f;死锁问题锁超时问题归一问题可重入问题阻塞与非阻塞问题公平锁&#xff08;Fair Lock)公平锁&#xff08;F…

【每日力扣】207. 课程表 与 208. 实现 Trie (前缀树)

&#x1f525; 个人主页: 黑洞晓威 &#x1f600;你不必等到非常厉害&#xff0c;才敢开始&#xff0c;你需要开始&#xff0c;才会变的非常厉害 207. 课程表 你这个学期必须选修 numCourses 门课程&#xff0c;记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课…

实现 Flask 应用的 HTTPS 加密保护

文章目录 1. 获得免费的 SSL 证书步骤&#xff1a; 2. 配置 Flask 应用3. 测试和部署结论结论 在今天的网络环境中&#xff0c;保护网站和用户数据的安全至关重要。通过在 Flask 应用中启用 HTTPS 加密&#xff0c;您可以确保用户的数据在传输过程中得到保护。本文将介绍如何结…

vue3修改eldialog弹窗css不生效

问题&#xff1a;子组件中的eldialog没有父标签 直接使用如下是不生效的 .el-dialog{ top: 10%; } 解决&#xff1a; 加一个父标签 使用deep深度查询 .dialogClass :deep(.el-dialog) { top: 10%; } 就可以修改了

# 从浅入深 学习 SpringCloud 微服务架构(十八)

从浅入深 学习 SpringCloud 微服务架构&#xff08;十八&#xff09; 一、开源配置中心 Apollo&#xff1a;概述 1、开源配置中心 Apollo Apollo -A reliable configuration management system Apollo(阿波罗)是携程框架部门研发的分布式配置中心&#xff0c;能够集中化管理…

研究变压器感应耐压试验电源的能效和节能潜力

变压器感应耐压试验电源 变压器感应耐压试验电源在电源行业中是一种非常重要的设备&#xff0c;用于测试和验证变压器的绝缘性能。变压器感应耐压试验电源是一种专门为变压器感应耐压试验而设计的电源设备。它的工作原理基于变压器的感应原理&#xff0c;利用感应电压来对变压器…

【科学研究】创造力的阴暗面——恶意创造力

::: block-1 “时问桫椤”是一个致力于为本科生到研究生教育阶段提供帮助的不太正式的公众号。我们旨在在大家感到困惑、痛苦或面临困难时伸出援手。通过总结广大研究生的经验&#xff0c;帮助大家尽早适应研究生生活&#xff0c;尽快了解科研的本质。祝一切顺利&#xff01;—…

CheckStyle静态样式之道

优质博文&#xff1a;IT-BLOG-CN 在标准化的统一样式检查规范里&#xff0c;最为常用的统一样式工具是checkstyle插件&#xff0c;而不是国内阿里的代码规约插件。 【1】下载插件 【2】配置生效 配置生效及告警设置 【3】配置checkstyle.xml 官网地址 官网最新Releases 下面…

SV-6007 网络对讲求助终端 隧道对讲求助广播终端

SV-6007 网络对讲求助终端 隧道对讲求助广播终端 一、描述 SV-6007 网络对讲求助终端 隧道对讲求助广播终端 SV-6007是我司的一款壁挂式双按键求助对讲终端&#xff0c;具有10/100M以太网接口&#xff0c;其接收网络的音频数据&#xff0c;实时解码播放&#xff0c;还配置了…

照片尺寸怎么修改?这几个图片处理方式都可以

修改图片尺寸在许多场景中都是常见的需求&#xff0c;包括网页设计、图片编辑、手机应用程序开发、幻灯片演示、社交媒体和博客、以及打印和出版物设计&#xff0c;通过调整图片大小&#xff0c;可以适应不同的布局和设备要求&#xff0c;那么问题来了&#xff0c;如何将图片改…

Vue3实战笔记(21)—自定义404页面

文章目录 前言一、标题1二、通过守卫导航配置404总结 前言 一个精致的404页面对于网站的用户体验至关重要。404页面&#xff0c;也称为“未找到”页面&#xff0c;是在用户尝试访问网站中不存在或已删除的页面时显示的。 一、标题1 404都很熟悉了&#xff0c;vue3默认找不到界…

C#学习笔记12:Winform网页操作-CefSharp内嵌浏览器

今日学习使用Winform操作网页&#xff0c;先从从窗体内嵌一个浏览器开始吧&#xff1a; 文章提供测试代码讲解、测试效果图、整体测试工程下载 目录 CefSharp介绍与安装&#xff1a; 创建解决方案安装CefSharp&#xff1a; 控件放置&#xff1a; 整体代码贴出&#xff1a; 更改…

数据结构与算法学习笔记十---链队列的表示和实现(C++)

目录 前言 1.队列的概念 2.队列的表示和实现 1.定义 2.初始化 ​编辑 3.销毁队列 4.清空队列 5.队列判空 6.队列长度 7.获取队头元素 8.入队 9.出队 10.遍历 11.完整代码 前言 这篇博客主要讲的是对队列的链式存储。 1.队列的概念 队列是一种访问受限的线性表。…

知识图谱开发日志

应用于应用环境的配置.测试.发布 假如你写了一个web,并且测试调试都没有问题 并且,你想发给你的朋友,导师,或者部署到远程云服务器上 那么,你需要配置相同的软件,比如数据库,web服务器,必要的插件,库,etc…但这并不一定能保证软件的正常运行,因为别人可能使用完全不同的操作系统…

Facebook广告运营黑五类怎么投?

哈喽呀&#xff0c;很多小伙伴不知道黑五具体是哪些今天就跟大家来说说&#xff0c;黑五类是指一些擦边的受到限制的产品&#xff0c;指的是药品、医疗器械、丰胸、减肥、增高这五类产品。 黑五类产品可以在哪些平台进行投放&#xff1a; 目前黑五类可以广告投放的跨境电商平台…

第三方组件element-ui

1、创建 选vue2 不要快照 vue2于vue3差异 vue2main。js import Vue from vue import App from ./App.vueVue.config.productionTip falsenew Vue({render: h > h(App), }).$mount(#app)vue3 main.js vue2不能有多个跟组件&#xff08;div&#xff09; 代码&#xff1a;Mo…

ssm教材管理系统

ssm教材管理系统 一、主要技术点 ssm,easypoi(对excel导入导出)&#xff0c;下拉列表二级联动&#xff0c;live-2d看板娘&#xff0c;echartjs图表&#xff0c;图片上传下载。。 二、主要业务逻辑 管理员可以增删改查教材、教材商、入库教材、用户&#xff08;用户包括学生…

2024年京东618红包领取口令是什么?2024年618京东红包活动时间是从什么时候开始到几号结束?

2024年京东618红包活动时间 京东618红包活动时间是从2024年5月28日开始&#xff0c;一直持续到6月18日结束。 2024年京东618红包领取方式 在2024年京东618活动时间内&#xff0c;每天都可以打开手机京东APP&#xff0c;输入框搜索红包领取口令「 天降红包882 」&#xff0c;搜…

Java——对象的打印

当我们运行如下代码&#xff1a; public class Person {String name;String gender;int age;public Person(String name,String gender,int age){this.name name;this.gender gender;this.age age;}public static void main(String[] args){Person person new Person(&quo…