C++笔试强训day20

目录

1.经此一役小红所向无敌

2.连续子数组最大和

3.非对称之美


1.经此一役小红所向无敌

链接

简单模拟即可。

需要注意的是:

除完之后有无余数,若有,则还可以再挨一次打。

#include <iostream>
using namespace std;
#define int long long
int a, h, b, k;
signed main() {cin >> a >> h >> b >> k;int sum = 0;int cnt1 = h / b;int cnt2 = k / a;if (h % b != 0)cnt1++;if (k % a != 0)cnt2++;int cnt = min(cnt1, cnt2);sum += cnt * (a + b);if (cnt1 == cnt2)cout << sum << endl;else if (cnt1 > cnt2){sum += a * 10;cout << sum << endl;}else if (cnt1 < cnt2){sum += b * 10;cout << sum << endl;}return 0;
}

2.连续子数组最大和

链接

一道线性dp问题,最主要的是找出dp所表示的含义:

dp[i], 以i为结尾,可以表示的最大数值。

#include <iostream>
using namespace std;const int N = 2e5 + 10;
int dp[N];
int v[N];
int main() {int n;cin >> n;for(int i = 1; i <= n; ++i)cin >> v[i]; for(int i = 1; i <= n; ++i)dp[i] = max(dp[i - 1] + v[i], v[i]);int ret = -101;for(int i = 1; i <= n; ++i)ret = max(dp[i], ret);cout << ret << endl;return 0;
}

填完表后,遍历一遍表中的数,取出最大值即可。

由于,因此可以让 ret 初始化为 -101。 

3.非对称之美

链接

我认为这就是一道数学分析找规律题,暴力强解复杂度太高,易超时,解不出来。

但是这个规律也不好找:

#include <iostream>
#include <string>
using namespace std;
int n;
string s;
int fun()
{// 1. 判断是否全都是相同字符bool flag = false;for (int i = 1; i < n; i++){if (s[i] != s[0]){flag = true;break;}}if (flag == false) return 0;// 2. 判断本⾝是否是回⽂flag = true;int left = 0, right = n - 1;while (left < right){if (s[left] == s[right]){left++;right--;}else{flag = false;break;}}if (flag) return n - 1;else return n;
}
int main()
{cin >> s;n = s.size();cout << fun() << endl;return 0;
}

若字符全相同,则返回0。

若从0和n - 1往中间遍历,存在不相同,即可直接break返回 n (个数)。

若全相同,则返回 n - 1。

即这时个对称数,但是如果你取除第一个或最后一个外的所有字符,即可组成非对称。

题目有要求要最大,所以为 n - 1。

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

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

相关文章

设计模式——结构型模式——代理模式(静态代理、动态代理:JDK、CGLIB)

目录 代理模式 代理模式简介 代理模式的分类 代理模式组成 代理模式的优缺点 静态代理 背景前置 编写代码 JDK动态代理 编写代码 使用Arthas分析JDK动态代理底层原理 CGLIB动态代理 编写代码 三种代理的对比 代理模式使用场景 代理模式 代理模式简介 代理模式属…

Mybatis操作数据库的两种方式:Mapper代理模式

1.Mapper代理模式的特点 程序员没有写接口的子实现——直接获取数据库的数据 因为Mybatis定义了一套规则&#xff0c;对方法进行了实现&#xff0c;程序员只要遵循这套方法就可以直接使用 2.如何实现Mapper代理模式 步骤&#xff1a; 1.创建一个dao接口&#xff0c;在接口…

java项目之英语知识应用网站源码(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的英语知识应用网站。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 英语知识应用网站的主要…

【免费】AME最新Adobe Media Encoder电脑软件安装包2024-2018支持WIN和MAC

Adobe MediaEncoder「Me」2024是一款功能强大的转码和媒体处理软件&#xff0c;它不仅能轻松应对各种媒体文件的编码和导出需求&#xff0c;还支持多种视频格式和分辨率&#xff0c;让你的视频处理变得更加高效。此外&#xff0c;该软件界面简洁明了&#xff0c;操作简便&#…

【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”

看到这句话的时候证明&#xff1a;此刻你我都在努力~ 加油陌生人~ 个人主页&#xff1a; Gu Gu Study ​​ 专栏&#xff1a;一步一步了解Java 喜欢的一句话&#xff1a; 常常会回顾努力的自己&#xff0c;所以要为自己的努…

【Element-UI快速入门】

文章目录 **Element-UI快速入门****一、Element-UI简介****二、安装Element-UI****三、引入Element-UI****四、使用Element-UI组件****五、自定义Element-UI组件样式****六、Element-UI布局组件****七、Element-UI表单组件****八、插槽&#xff08;Slots&#xff09;和主题定制…

【数据结构】排序(一)—— 希尔排序(思路演进版)

目录 一、常见的排序算法分类 二、常见排序算法的实现 2.1插入排序 2.1.1基本思想 2.1.2直接插入排序 思路 step1.单趟控制 step2.总体控制 代码实现 测试 特性总结 2.1.3 希尔排序( 缩小增量排序 ) 基本思想 思路演进 &#x1f308;1.代码实现单组排序&#…

你能坚持二十年如一日地积极试错吗?

你能坚持二十年如一日地积极试错吗&#xff1f;先说一个大家都耳熟能详的人物&#xff1a;克里斯托弗哥伦布&#xff0c;他被称为新大陆的发现者&#xff0c;是具有极高历史地位的伟大航海家。 但是新大陆本来就不是所谓的“新”大陆&#xff0c;而是在4万年前从白令海峡迁徙过…

端午节线上活动方案怎么写?

一年一端午&#xff0c;一岁一安康。 如果您想组织端午活动&#xff0c;却不知道如何安排&#xff0c;可以看看何策网&#xff0c;有很多案例参考&#xff0c;仿造模板修改即可。 下面分享一个线上端午节活动策划方案&#xff0c;希望能帮到你&#xff01; 端午节作为祭祖祈…

Qt 实现TCP 协议的断开重连

在Qt中实现TCP断开重连&#xff0c;你可以使用QTcpSocket类&#xff0c;并结合QTimer来处理重连逻辑&#xff0c;在Qt中实现TCP断开后的自动重连功能&#xff0c;通常可以通过以下步骤进行&#xff1a; 1. 初始化QTcpSocket&#xff1a; 首先&#xff0c;需要创建一个QTcpSock…

Docker使用注意事项

docker import 和 docker load 有什么区别&#xff1f; 想要了解 docker load 与 docker import 命令的区别&#xff0c;还必须知道 docker save 与 docker export docker save&#xff1a;将一个镜像导出为文件&#xff0c;再使用docker load命令将文件导入为一个镜像&#…

mysql集群NDBcluster引擎在写入数据时报错 (1114, “The table ‘ads‘ is full“)

问题描述&#xff1a;mysql集群在写入数据时&#xff0c;出现上述报错 问题原因&#xff1a;表数据已满&#xff0c;一般是在集群的管理节点设置里面datamemory的值太小&#xff0c;当数据量超过该值时就会出现该问题 解决方案&#xff1a; 修改集群管理节点的config.ini里面…

ICode国际青少年编程竞赛- Python-4级训练场-嵌套for循环练习2

ICode国际青少年编程竞赛- Python-4级训练场-嵌套for循环练习2 1、 for i in range(3):Dev.turnRight()for j in range(3):Dev.step(-3)Dev.turnRight()Dev.step(4-2*i)2、 for i in range(6):for j in range(2):Dev.step(2 2 * i)if i > 3: Dev.step(i - 2)Dev.turnRi…

更相减损术求最大公约数

1.定义 更相减损术是出自《九章算术》的一种求最大公约数的算法&#xff0c;它原本是为约分而设计的&#xff0c;但它适用于任何需要求最大公约数的场合。 原文是&#xff1a; 可半者半之&#xff0c;不可半者&#xff0c;副置分母、子之数&#xff0c;以少减多&#xff0c;…

C++小程序:同一路由器下两台计算机间简单通信(2/2)——客户端

客户端的程序结构前半部分与服务器端基本相同&#xff0c;后半部分也相对简单。相关函数的解释可以参考前文服务器端的内容。有关客户端的内容除个别地方外&#xff0c;就不再做长篇大论的解释。强调一点&#xff0c;如果将此程序移到其它电脑上运行&#xff0c;编译需要releas…

Ciphey无法安装的解决办法

安装过程纯属自己实践&#xff0c;满满干货 困扰我几天的问题终于解决了 我看着教程在window上安装 python3.8/python3.9/python3.10无论如何都安装不上&#xff0c; 在win10虚拟机仍然安装不上 可能是我电脑环境问题 解决办法&#xff1a; 在kali中安装&#xff0c;但是…

18_文件系统的制作-Ramdisk

文件系统的制作(Ramdisk) 本文介绍如何制作文件系统。另外, 由于Busybox 集合了很多工具,编译起来也非常方便。在讲解制作文件系统的时候,也会介绍 busybox 的编译和安装过程;介绍制作文件系统时,会详细介绍 Ramdisk 、 YAFFS2、JFFS2 及其它文件系统的制作。 1. 根文件系…

列表、字典、集合推导式

文章目录 前言1.列表推导式&#xff08;List Comprehension&#xff09;:2 字典推导式&#xff08;Dictionary Comprehension&#xff09;3 集合推导式&#xff08;Set Comprehension) 前言 在Python中&#xff0c;列表、字典、集合推导式是一种便捷的语法&#xff0c;用于根据…

第13节 第二种shellcode编写实战(2)

在第二种shellcode编写实战(1)的基础上&#xff0c;新增加一个CAPI类&#xff0c;将所有用到的函数都在这个类中做动态调用的处理&#xff0c;这样使得整个shellcode功能结构更加清晰。 1. 新建类CAPI&#xff08;即api.h和api.cpp两个文件&#xff09;&#xff1a; api.h&…

#DELPHI BASS库Windows平台下,实时更换输出设备

DELPHI BASS库Windows平台下&#xff0c;实时更换输出设备 #DELPHI BASS库Windows平台下&#xff0c;实时更换输出设备 取自网络&#xff0c;分享&#xff0c;项目嵌入无损音乐播放后&#xff0c;画蛇添足的功能分享&#xff01; 直接贴核心代码&#xff0c;看不明白去看说…