牛客周赛33

第一题:小红的单词处理

小红拿到了用空格隔开的两个单词。她希望你先输出第二个单词,再输出第一个单词。你能帮帮她吗?

利用c/c++的特性自动忽略空格

#include<iostream>
using namespace std;
int main(){string a,b;cin>>a>>b;cout<<b<<endl;cout<<a;
}

第二题:小红煮汤圆

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

元宵节快到了,小红作为甜食爱好者,非常喜欢吃汤圆,因此对元宵节也是很期待的。
小红前往超市买了n袋汤圆,每袋汤圆有x颗。小红每次煮k颗汤圆,请你计算小红一共可以煮多少次,以及每次会打开几袋?
小红非常节约,每次用完了一袋汤圆才会开新的一袋。

直接模拟这个过程就行

我这个代码复杂度比较高点,O(n)复杂度

#include<iostream>
using namespace std;
int n,x,k;
bool y;
long long  panduan(int a,bool y){if(!y) return 0;else{if(a<=x) return 1;else if(a%x==0) return a/x;else  return (x+a)/x;}
}
int main(){cin>>n>>x>>k;//小红购买的袋数、每袋的汤圆数量,以及小红每次煮的汤圆数量int target=0;int i;cout<<n*x/k<<endl;cout<<panduan(k,true)<<" ";int sum=panduan(k,true);for(i=2;i<=n*x/k;i++){target=i*k-sum*x;if(target<=0) y=false;else  y=true;sum+=panduan(target,y);cout<<panduan(target,y)<<" ";}}

也可以直接用数学公式O(1)的复杂度,简化

void solve(){int n,x,k;scanf("%d%d%d",&n,&x,&k);printf("%d\n",n*x/k);int now=0;for(int i=1;i<=n*x/k;i++){printf("%d ",i*k/x+(i*k%x?1:0)-now);now=i*k/x+(i*k%x?1:0);}
}

第三题:小红的 01 串

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

小红拿到了一个 01 串,她可以进行以下两种操作:

- 删除第一个字符。
- 删除第二个字符。

操作若干次后(可以操作 0 次),将得到一个最终的字符串。该字符串每个'1'字符将增加 1 分,每个'0'字符将减少 1 分。小红希望最终的分数尽可能大,你能帮小红求出这个分数吗?

这就是典型的贪心策略

首先先把前面的0全部都去掉,直到遇到第一个1为止,之后一直进行操作二即可

#include <bits/stdc++.h>
using namespace std;
#define rep(X,L,R) for(int X=(L);X<=(R);++X)
#define per(X,L,R) for(int X=(L);X>=(R);--X)
typedef long long ll;int main(){ios::sync_with_stdio(0);cin.tie(0);string s;cin>>s;int n=s.length(),cur=0,cnt=count(s.begin(),s.end(),'1'),ans=!!cnt;reverse(s.begin(),s.end());rep(i,0,n-1){cur+=s[i]=='1'?1:-1;cnt-=s[i]=='1';ans=max(ans,cur+!!cnt);}cout<<ans;return 0;
}

 

第四题:小红的数组清空

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

小红拿到了一个数组,她准备用尽可能少的代价将该数组全部清空。
小红有两种操作:
1. 直接删除一个元素x,花费代价为 1。
2. 若上一个删除的元素为x,那么直接删除一个元素x+1,花费代价为 0。该操作仅当x+1在数组中存在时才可进行。

请你求出小红清空整个数组的最小代价。

思路:找到连续的区间只删一次,达到最优化

【1】 利用sort库排序

 【2】利用map统计每个数出现的次数,优先使用操作1,删除最小值,一直操作二

#include<bits/stdc++.h>
#define endl '\n'
using namespace std;
using i64=long long ;
using ld=long double;
const int N=2e5+10;
const int mod=1e9+7;
int a[N];
void solve(){int n;cin>>n;for(int i=1;i<=n;i++) cin>>a[i];sort(a+1,a+1+n);int ans=0;map<int,int> mp;for(int i=1;i<=n;i++){if(mp[a[i]-1]) mp[a[i]-1]--,mp[a[i]]++;else mp[a[i]]++;}for(auto [x,y]:mp) ans+=y;cout<<ans<<endl;
}
int main(){ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);int t=1;
//	cin>>t;while(t--) solve();return 0;
}

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

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

相关文章

《UE5_C++多人TPS完整教程》学习笔记18 ——《P19(实现子系统函数)创建会话(Create Session)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P19 &#xff08;使用子系统函数&#xff09;创建会话&#xff08;Create Session&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&am…

基于Java SSM框架实现疫情防控系统项目【项目源码】

基于java的SSM框架实现疫情防控系统演示 Java技术 Java技术它是一个容易让人学会和使用的一门服务器语言。它在编程的过程当中只需要很少的知识就能建立起一个真正的交互站点。对于这个教程来说它并不需要你完全去了解这种语言&#xff0c;只要能快速融入web站点就可以&#x…

7.Cloud-GateWay

0.概述 https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.1.RELEASE/reference/html/ 1.入门配置 1.1 POM <!--新增gateway--> <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-sta…

javaSE和javaEE区别

javaSE Java SE&#xff08;Java Platform&#xff0c;Standard Edition&#xff09; Java SE 以前称为 J2SE。 它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。 Java SE 包含了支持 Java Web服务开发的类&#xff0c;并为 Java Platform&#…

Spring 事务原理总结六

不知不觉&#xff0c;关于Spring事务的文章已经写了五篇了。老实讲我自己不断质疑过自己&#xff1a;现在写这些文章还有意义吗&#xff1f;当前的市场已经成什么样了&#xff0c;为什么还要固守这落后的技术&#xff1f;但是贝索斯一次接受访谈的回答&#xff0c;让我写下去的…

ESP32-Cam学习(1)——拍摄第一张照片

1.开发板介绍 使用的ESP32-Cam实物图为&#xff1a; 在某宝可以轻易买到。它分为主板&#xff0c;和底板。底板的主要功能是供电、程序下载等等。主板才是ESP32芯片的核心。 2.固件烧录 使用摄像头之前&#xff0c;需要给ESP32刷入支持摄像头的固件库&#xff0c;其下载地址为…

【C】printf和scanf函数的探索

printf()是输出函数&#xff0c;scanf()是输入函数&#xff0c;输入/输出函数简称为I/O函数。它两是C语言中最通用的输入输出函数。不同的编译器可能有不同的I/O的实现。 printf和scanf这两个函数虽然功能不同&#xff0c;但是工作原理几乎相同&#xff0c;它们都使用格式字符…

数据库-----范式判断

目录 (1)求最小函数依赖集 (2)求候选码 (3)求R最高属于哪级范式 总结: 以一道例题来看: 3.已知关系模式R<ABCDEG> F{BC-->E&#xff0c;DC-->B,D-->A,B-->G,D-->E,E-->G,B-->C} 求: ①F的最小函数依赖集 ②R的候选码 ③R最高属于…

美国中性原子量子公司QuEra宣布将在英国建造量子测试平台

编辑丨慕一 编译/排版丨沛贤 深度好文&#xff1a;1250字丨7分钟阅读 中性原子量子公司QuEra Computing宣布&#xff0c;英国国家量子计算中心&#xff08;NQCC&#xff09;将成为一个量子计算测试平台的所在地。 通过NQCC的资助&#xff0c;并在小型企业研究计划&#xff…

【Kubernetes in Action笔记】1.快速开始

在Kubernetes上运行一个程序 基础运行环境 当前的运行环境为使用虚拟机构建的单master集群。 [rootk8s-master ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready control-plane 109d v1.27.1 k8s-node1 Ready …

基于物联网的智慧农业简介

背景 物联网是通过信息传感设备,按约定的协议实现人与人、人与物、物与物全面互联的网络,其主要特征是通过射频识别、传感器等方式获取物理世界的各种信息,结合互联网、移动通信网等技术进行信息的传输与交互,采用智能计算技术对信息进行分析处理,从而提高对真实环境的感…

如何基于YAML设计接口自动化测试框架?看完秒会!

在设计自动化测试框架的时候&#xff0c;我们会经常将测试数据保存在外部的文件&#xff08;如Excel、YAML、CSV&#xff09;或者数据库中&#xff0c;实现脚本与数据解耦&#xff0c;方便后期维护。目前非常多的自动化测试框架采用通过Excel或者YAML文件直接编写测试用例&…

沁恒CH32V30X学习笔记05--串口接收中断和空闲中断组合接收数据

同步异步收发器(USART)** 包含 3 个通用同步异步收发器(USART1/2/3)和 5 个通用异步收发器(UART4/5/6/7/8) 空闲帧,空闲帧是 10 位或 11 位高电平,包含停止位。 断开帧是 10 位或 11 位低电平,后跟着停止位 引脚模式配置 引脚分配 bsp 驱动代码 bsp_uart_it.c /…

固定资产与总账对账,业务系统出不来数据?

1、【财务会计】-【固定资产】-【与总账对账】 2、【财务会计】-【总账】-【对账执行】 以上两个节点都可以进行 “固定资产与总账” 对账执行 操作。 问题&#xff1a; 固定资产与总账对账&#xff0c;业务系统出不来数据&#xff1f;如下图 &#xff1a; 原因&#xff…

麒麟linux和东方通TongWeb时区timezone不同步问题的解决

默认东方通文件夹位置如下&#xff1a; /data/TongWeb7.0.4.9_M3_Enterprise_Linux 在bin文件夹下有一个external.vmoptions 文件。 将下面这行&#xff1a; -Duser.timezoneAsia/Shanghai 添加到external.vmoptions 文件中。 重启东方通&#xff0c;时区问题解决。

VR直播:只需五步,即可实现直播“黑科技”

现如今&#xff0c;VR直播的应用范围较为广泛&#xff0c;有很多人可能在现场见过VR直播的拍摄设备&#xff0c;不仅有高性能的电脑、VR相机&#xff0c;还有专业的灯光和拍摄机器等。只需要五步&#xff0c;就可以实现安全、高效的VR全景直播。 首先是专业全景采集设备进行全景…

svg之全局组件,配合雪碧图解决vue2的svg优化问题

这里是vue2中的svg的完整解决方案的另一篇。 <template><svg :class"svgClass"><use :xlink:href"#${name}"></use></svg> </template><script>export default {name: icon,props: {name: {type: String,requi…

几种SLAM算法跑出的效果比较

以下所有的SLAM算法均使用此辆ROS小车跑。 文章目录 1.Gmapping SLAM算法构建地图2.Hector SLAM算法构建地图3.Karto SLAM算法构建地图4.Cartographer SLAM算法构建地图5.深度摄像头的建图6.rtab-map(深度双目与激光雷达构建三维建图)7.ORB-SLAM8.无奖竞猜 1.Gmapping SLAM算法…

OpenAI Sora视频生成机制:时空补丁

AI如何将静态图像转化为动态、逼真的视频&#xff1f;OpenAI 的 Sora 通过时空补丁&#xff08;spacetime patches&#xff09;的创新使用给出了答案。 独特的视频生成方法 在生成模型的世界中&#xff0c;我们看到了从 GAN 到自回归和扩散模型的许多方法&#xff0c;它们都有…

华纳云:Nginx的内存池如何实现,有哪些特点

Nginx是一个高性能的开源反向代理服务器和 Web 服务器&#xff0c;它采用了内存池(Memory Pool)的概念来管理内存&#xff0c;以提高性能和降低内存碎片化。Nginx的内存池实现主要基于以下两个核心组件&#xff1a; ngx_pool_t 结构体&#xff1a; Nginx中的内存池由 ngx_pool_…