当前位置: 首页 > news >正文

牛客周赛 Round 72 题解

本次牛客最后一个线段树之前我也没碰到过,等后续复习到线段树再把那个题当例题发出来

小红的01串(一)

思路:正常模拟,从前往后遍历一遍去统计即可

#include<bits/stdc++.h>
using namespace std;
#define int long long
string s;
int a[4];
signed main()
{cin>>s;int ans=0;for(int i=1;i<s.size();i++){if(s[i-1]=='0'&&s[i]=='1'){ans++;;}if(s[i-1]=='1'&&s[i]=='0'){ans++;;}}cout<<ans;
}

 小红的01串(二)

思路:我们找一下规律,我们发现长度为2的只有1个,长度为3的可以有3个,长度为4的会有6个,所以规律就是长度为n的01交替序列,能产生的值为(1+n-1)*n/2;

然后直接去统计即可

#include <iostream>
#include <string>
using namespace std;
#define int long long
signed main() {string s;cin >> s;int n = s.size();int result = 0;int length = 1;for (int i = 1; i < n; ++i) {if (s[i] != s[i - 1]) {length++; } else {if (length >= 2) {result += (length - 1) * length / 2;}length = 1; }}if (length>=2) {result += (length - 1) * length / 2;}cout << result << endl;return 0;
}

 小红的01串(三)

 思路:我们首先来分析一下什么时候会是不可能存在的,最大的相邻01子串应当为2*min(a,b)前提是大的要比小的至少多1

然后剩下的就是看k的奇偶性,如果是奇数,那么a,b用的一样多,否则就是大的比小的多用一个

但是呢注意特判,因为有可能为0,如果为0的话,只有a,b同时都不为0,那就是不可能构造出来的,看代码吧

#include<bits/stdc++.h>
using namespace std;
#define int long long
int t;
int a,b,k;
void solve()
{cin>>a>>b>>k;if(k==0&&a!=0&&b!=0){cout<<"-1\n";return ;}if(2*min(a,b)<k){cout<<"-1\n";return ;}else{if(k%2==1){int x=(k+1)/2;a-=x;b-=x;for(int i=1; i<=a; i++){cout<<0;}for(int i=1; i<=x; i++){cout<<"01";}for(int i=1; i<=b; i++){cout<<1;}cout<<"\n";}else{k-=1;int x=(k+1)/2;a-=x;b-=x;if(a>b){a-=1;if(a<0){cout<<-1<<"\n";return ;}for(int i=1; i<=a; i++){cout<<0;}for(int i=1; i<=x; i++){cout<<"01";}for(int i=1; i<=b; i++){cout<<1;}cout<<"0";cout<<"\n";}else{b-=1;if(b<0){cout<<-1<<"\n";return ;}cout<<"1";for(int i=1; i<=a; i++){cout<<0;}for(int i=1; i<=x; i++){cout<<"01";}for(int i=1; i<=b; i++){cout<<1;}cout<<"\n";}}}
}
signed main()
{cin>>t;while(t--){solve();}return 0;
}

小红的01串(四)

思路:我们可以先去找到右边和当前元素相同和不同的位置,然后跑dp,dp[i]表示到i位置所花的最小花费是多少

ps:dp数组初始化大一点,因为开的太小了,所以导致赛时没过

#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,x,y;
string s;
int a[100005];
int same[100005];
int differ[100005];
int dp[100005];
signed main()
{cin>>n>>x>>y;cin>>s;s=' '+s;for(int i=1;i<=n;i++){same[i]=-1;differ[i]=-1;}memset(dp,0x3f,sizeof(dp));dp[1]=0;int num[2]={-1,-1};for(int i=n;i>=1;i--){if(s[i]=='1'){same[i]=num[1];differ[i]=num[0];}else{same[i]=num[0];differ[i]=num[1];}num[s[i]-'0']=i;}for(int i=1;i<=n;i++){if(same[i]!=-1){dp[same[i]]=min(dp[same[i]],dp[i]+x);}if(differ[i]!=-1){dp[differ[i]]=min(dp[differ[i]],dp[i]+y);}}cout<<dp[n];return 0;
}

 小红的01串(五)

思路:dp[i][j]表示,选完前i个位置,取模13余j的个数,那么我们就可以发现找到dp转移公式,假设此次后面加上add这个数,那么整题值变化为整体值*10+add 

因此dp转移方程为

dp[i+1][(j*10+add)%13]=(dp[i+1][(j*10+add)%13]+dp[i][j])%mod; 

#include<bits/stdc++.h>
using namespace std;
#define int long long
string s;
int dp[200005][13];
int mod=1000000007;
signed main()
{cin>>s;int n=s.size();dp[0][0]=1;for(int i=0;i<n;i++){for(int j=0;j<13;j++){if(dp[i][j]==0){continue;}if(s[i]=='0'||s[i]=='1'){int add=s[i]-'0';dp[i+1][(j*10+add)%13]=(dp[i+1][(j*10+add)%13]+dp[i][j])%mod;}else {for(int add=0;add<=1;add++){dp[i+1][(j*10+add)%13]=(dp[i+1][(j*10+add)%13]+dp[i][j])%mod;}}}}cout<<dp[n][0];return 0;
}

 

相关文章:

牛客周赛 Round 72 题解

本次牛客最后一个线段树之前我也没碰到过&#xff0c;等后续复习到线段树再把那个题当例题发出来 小红的01串&#xff08;一&#xff09; 思路&#xff1a;正常模拟&#xff0c;从前往后遍历一遍去统计即可 #include<bits/stdc.h> using namespace std; #define int lo…...

Flux Tools 结构简析

Flux Tools 结构简析 BFL 这次一共发布了 Canny、Depth、Redux、Fill 四个 Tools 模型系列&#xff0c;分别对应我们熟悉的 ControlNets、Image Variation&#xff08;IP Adapter&#xff09;和 Inpainting 三种图片条件控制方法。虽然实现功能是相同的&#xff0c;但是其具体…...

0 前言

ArCS作为一个基于Rust的CAD&#xff08;计算机辅助设计&#xff09;开源系统&#xff0c;尽管已经有四年未更新&#xff0c;但其设计理念和技术实现仍然具有很高的学习和参考价值。以下是对ArCS项目的进一步分析和解读&#xff1a; 一、项目亮点与技术优势 高效与安全的Rust语…...

ARM嵌入式学习--第八天(PWM)

PWM -PWM介绍 PWM&#xff08;pulse Width Modulation&#xff09;简称脉宽调制&#xff0c;是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术&#xff0c;广泛应用在测量&#xff0c;通信&#xff0c;工控等方面 PWM的频率 是指在1秒钟内&#xff0c;信号从…...

遇到“REMOTE HOST IDENTIFICATION HAS CHANGED!”(远程主机识别已更改)的警告

连接虚拟机时提示报错&#xff1a; [insocoperhq-soc-cap-raw3 ~]$ ssh root10.99.141.104WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-midd…...

vue3前端组件库的搭建与发布(一)

前言&#xff1a; 最近在做公司项目中&#xff0c;有这么一件事情&#xff0c;很是头疼&#xff0c;就是同一套代码&#xff0c;不同项目&#xff0c;要改相同bug&#xff0c;改好多遍&#xff0c;改的都想吐&#xff0c;于是就想做一个组件库&#xff0c;这样更新一下就全都可…...

COMSOL快捷键及内置函数

文章目录 COMSOL快捷键使用COMSOL算子求最大值和最小值COMSOL内置函数3.1 解析函数3.2 插值函数3.3 分段函数3.4 高斯脉冲函数3.5 斜坡函数3.6 矩形函数3.7 波形函数3.8 随机函数3.9 Matlab函数3.10 SWITCH函数 COMSOL快捷键 Ctrl&#xff0b;/ 可快速打开预定义的物理量列表。…...

HUAWEI-eNSP交换机链路聚合(手动负载分担模式)

配置思路:HUAWEI交换机链路聚合有LACP模式跟手动负载分担模式,本文主打手动负载分担模式:首先交换机-PC之间划分基本vlan,交换机-交换机之间创建链路聚合组,划分端口至链路聚合分组(缺省模式为手动负载分担模式)。结果验证要求同vlan可以ping通,关闭某个聚合端口后仍可…...

番外篇 | Hyper-YOLO:超图计算与YOLO架构相结合成为目标检测新的SOTA !

前言:Hello大家好,我是小哥谈。Hyper-YOLO,该方法融合了超图计算以捕捉视觉特征之间复杂的高阶关联。传统的YOLO模型虽然功能强大,但其颈部设计存在局限性,限制了跨层特征的融合以及高阶特征关系的利用。Hyper-YOLO在骨干和颈部的联合增强下,成为一个突破性的架构。在COC…...

【MATLAB第109期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数

【MATLAB第108期】基于MATLAB的带置信区间的RSA区域敏感性分析方法&#xff0c;无目标函数 参考第64期文章【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用&#xff08;含无目标函数&#xff0c;考虑代理模型&#xff09; 创新点&#xff1a; 1、采…...

Bootstrap 表格

Bootstrap 表格 引言 Bootstrap 是一个流行的前端框架&#xff0c;它提供了一套丰富的工具和组件&#xff0c;用于快速开发响应式和移动设备优先的网页。在本文中&#xff0c;我们将重点讨论 Bootstrap 中的表格组件&#xff0c;包括其基本结构、样式以及如何使用 Bootstrap …...

【论文阅读】Computing the Testing Error without a Testing Set

https://blog.csdn.net/qq_40021158/article/details/109485216 可以使用测试集来估计训练集和测试集之间的性能差距&#xff0c;但是要避免过度拟合测试数据几乎是不可能的。 使用隔离的测试集可能会解决此问题&#xff0c;但这需要不断更新数据集&#xff0c;这是一项非常昂贵…...

Visio——同一个工程导出的PDF文件大小不一样的原因分析

现象 在不同电脑&#xff0c;导出来的PDF文件大小不一样。 原因分析 文件小的未将字体嵌入&#xff0c;文件大的已经将字体嵌入了。...

【ETCD】ETCD 架构揭秘:内部各组件概览

ETCD 的主要组件及它们之间的关联关系如下&#xff1a; 目录 1. Client&#xff08;客户端&#xff09;2. gRPC 接口3. Etcd Server Main Loop&#xff08;ETCD 主循环&#xff09;4. Raft&#xff08;共识模块&#xff09;5. Peer Etcd Nodes&#xff08;ETCD 集群节点&#x…...

Qt WORD/PDF(四)使用 QAxObject 对 Word 替换(QWidget)

关于QT Widget 其它文章请点击这里: QT Widget 国际站点 GitHub: https://github.com/chenchuhan 国内站点 Gitee : https://gitee.com/chuck_chee 姊妹篇: Qt WORD/PDF&#xff08;一&#xff09;使用 QtPdfium库实现 PDF 操作 Qt WORD/PDF&#xff08;二…...

音视频学习(二十四):hls协议

基本原理 HLS协议通过将视频文件切分成多个小的媒体段&#xff08;通常是10秒左右的.ts文件&#xff09;&#xff0c;并通过HTTP传输给客户端。视频播放过程中&#xff0c;客户端按顺序请求这些小段文件来逐步播放整个视频流。HLS还支持多种码率&#xff0c;以便适应不同网络条…...

UniDepth 学习笔记

摘要 准确的单目度量深度估计&#xff08;MMDE&#xff09;是解决三维感知和建模中下游任务的关键。然而&#xff0c;最近的MMDE方法的显著准确性仅限于其训练领域。这些方法存在适度的域间隙&#xff0c;也不能推广到看不见的域&#xff0c;这阻碍了它们的实际适用性。本文提出…...

PVE——OpenWRT 硬盘 size单位的调整

​​​​​ 问题&#xff1a;初始状态为120MB 还需要进行计算&#xff0c;如果通过图形界面添加磁盘会出现单位不变的情况。 进入命令行前记得给你的虚拟机拍照&#xff0c;防止误操作 通过ssh 进入PVE命令行 按需添加容量即可 不到1G 会显示M 超过1G 不是G整数均为M单位。 …...

Android-ImagesPickers 拍照崩溃优化

Android-ImagesPickers 作为老牌图片选择器&#xff0c;帮助了很多牛马宝宝&#xff0c;刚好最近用到了多相册选择以及拍照&#xff0c;可能是高版本机型问题&#xff0c;导致拍照后就闪退 原作者文章以及git Android实用视图动画及工具系列之九&#xff1a;漂亮的图片选择器…...

Linux dd 命令详解:工作原理与实用指南(C/C++代码实现)

这段代码是一个模仿 Linux dd 命令的工具&#xff0c;它用于在不同文件之间复制数据。dd 是一个非常强大的命令行工具&#xff0c;可以用于数据备份、转换和复制。下面我将详细解释这段代码的原理、实现方式以及如何运行和测试。 Linux dd 命令的工作原理 dd 命令是 Unix 和 …...

Golang学习历程【第一篇 入门】

Golang学习历程【第一篇 入门Hello World】 1. 学习文档2. Window 本地安装Go2.1 安装2.2 验证 3. 开发环境——VsCode3.1 VsCode 安装3.2 安装插件3.2.1 language 语言汉化插件安装3.2.2 Go插件安装 4. Hello World 入门4.1 建工程4.2 创建项目文件4.3 编写Hello World程序4.4…...

青少年编程与数学 02-004 Go语言Web编程 01课题、Web应用程序

青少年编程与数学 02-004 Go语言Web编程 01课题、Web应用程序 课题摘要:一、Web应用程序二、Web服务器&#xff08;一&#xff09;什么是Web服务器&#xff08;二&#xff09;Web服务器配置1. 选择服务器软件2. 安装服务器软件3. 配置服务器4. 安全设置5. 部署网站内容6. 测试服…...

【mysql】如何解决主从架构从库延迟问题

目录 1. 说明2.优化主库的写入性能3. 优化网络性能4. 增强从库的硬件性能5. 调整从库的配置6. 主从架构优化7. 监控和调优8.使用 GTID 和 Group Replication 1. 说明 1.在 MySQL 数据库中&#xff0c;从库延迟&#xff08;replication lag&#xff09;是指主库和从库之间的数据…...

前端学习-获取DOM对象(二十一)

目录 前言 目标 提问 学习路径 根据CSS选择器来获取DOM元素 其他获取DOM元素的方法 根据CSS选择器来获取DOM元素 选择匹配的第一个元素 语法 示例 参数 返回值 选择匹配的多个元素语法 参数 字符串返回值 示例 补充 其它获取DOM元素方法 根据id获取一个元素 …...

PCL点云库入门——PCL库中Eigen数学工具库的基本使用(持续更新)

0、前言 PCL点云库中的算法都基于Eigen数学工具库来实现的&#xff0c;因此&#xff0c;掌握Eigen库对于深入理解和应用PCL点云库至关重要。Eigen库不仅提供了高效的矩阵和向量运算&#xff0c;还支持复杂的线性代数、几何变换等操作&#xff0c;为PCL点云处理提供了强大的数学…...

CLion Inlay Hints - 取消 CLion 灰色的参数和类型提示

CLion Inlay Hints - 取消 CLion 灰色的参数和类型提示 1. Parameter hints for C/C1.1. Toggle parameter hints globally 2. Type hints for C/C2.1. Toggle type hints&#xfeff; globally 3. Toggle inlay hints globallyReferences https://www.jetbrains.com/help/clio…...

2025山东科技大学考研专业课复习资料一览

[冲刺]2025年山东科技大学020200应用经济学《814经济学之西方经济学[宏观部分]》考研学霸狂刷870题[简答论述计算题]1小时前[强化]2025年山东科技大学085600材料与化工《817物理化学》考研强化检测5套卷22小时前[冲刺]2025年山东科技大学030100法学《704综合一[法理学、国际法学…...

vue3 v-model实例之二,tab标签页的实现

<template><div><Tab v-model"activeTab" :list"tabs" /><div><p>当前激活的 Tab 索引: {{ activeTab }}</p></div></div> </template><script setup> import { ref } from vue; import Tab …...

东方通TongWeb7.0.4.9M4部署SuperMap iServer 11.2.1

一、软件版本 操作系统: CentOS Linux release 7.5.1804 (Core)JDK:11.0.18东方通&#xff1a;TongWeb7.0.4.9M4SuperMap iServer&#xff1a;11.2.1 JDK和TongWeb软件分享&#xff1a; 链接: https://pan.baidu.com/s/1HGDTPnPID0PEOMbg3FjTVQ?pwdbh8v 提取码: bh8v 东方通软…...

QT绘制同心扇形

void ChartForm::paintEvent(QPaintEvent *) {QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing);// 设置抗锯齿painter.save();// 设置无边框&#xff08;不需要设置QPen&#xff0c;因为默认是不绘制边框的&#xff09;QPen pen(Qt::NoPen);// QPen pen…...