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

牛客刷题记录01

除2!

目录

除2!

题目描述:

​编辑 题目解析:

代码实现:

数组中两个字符串的最小距离__牛客网

题目描述:

题目解析:

代码实现:


除2!

题目描述:

给一个数组,一共有 n n\ n 个数。
你能进行最多 k k\ k 次操作。每次操作可以进行以下步骤:

  • 选择数组中的一个偶数 aia_iai​,将其变成 ai/2a_i/2ai​/2 。

现在你进行不超过 k k\ k 次操作后,让数组中所有数之和尽可能小。请输出这个最小的和。

 题目解析:

        不难想到,每次对最大的偶数除2即可,我们可以使用堆来获取每次更新后最大的偶数。

代码实现:

#include <iostream>
#include <queue>
using namespace std;long long Continuously_divide_by_2()
{priority_queue<int> q;int n, k;cin >> n >> k;long long ans = 0;for (int i = 0; i < n; i++){int t;cin >> t;ans += t;if (t % 2 == 0)q.push(t);}int m = 0;while (m < k && !q.empty()){int t = q.top();q.pop();t /= 2;ans -= t;if(t % 2 == 0)q.push(t);m++;}return ans;
}int main()
{cout << Continuously_divide_by_2() << endl;return 0;
}

 这里的结果需要用long long保存。

数组中两个字符串的最小距离__牛客网

题目描述:

给定一个字符串数组strs,再给定两个字符串str1和str2,返回在strs中str1和str2的最小距离,如果str1或str2为null,或不在strs中,返回-1。

 

题目解析:

  • 这道题我们甚至不需要用一个字符串数组来保存这些字符串;
  • 我们只需要一个pos变量来记录最新出现的目标字符串的位置,和一个tmpstr变量来记录出现的是哪个目标字符串(因为有两个);
  • 当出现的目标字符串于tmpstr不一样的时候,就可以尝试更新距离,只要出现目标字符串就更新pos。 

代码实现:

#include <iostream>
using namespace std;int Minimum_distance() {int n = 0;string str1, str2, strs, strt;int pos = 0;cin >> n;cin >> str1 >> str2;int ans = n + 1;for (int i = 0; i < n; i++) {cin >> strs;if (strs == str1) {if (strt.empty() || strt == str1) {}else {ans = min(ans, i - pos);}pos = i;strt = str1;} else if (strs == str2) {if (strt.empty() || strt == str2) {}else {ans = min(ans, i - pos);}pos = i;strt = str2;}}if (ans == n + 1) return -1;else return ans;
}int main() {cout << Minimum_distance();return 0;
}

http://www.dtcms.com/a/298117.html

相关文章:

  • 软件工程的工具链演进
  • Lua(数据库访问)
  • (CVPR 2025 )基于学习的自动HSI光谱校准方法
  • [CSS]让overflow不用按shift可以滚轮水平滚动(纯CSS)
  • 【氮化镓】GaN取代GaAs作为空间激光无线能量传输光伏转换器材料
  • SQL server 2019删除重建用户
  • Dify数据可视化-AntV Visualization Chart
  • 「iOS」——多线程原理总结
  • Codeforces Round 735 (Div. 2) D. Diane
  • 页面实时数据更新(进入页面或者浏览器后退前进状态刷新页面)
  • 单目云台是一种安防监控设备,它通常配备一个摄像机,用于实现远程监控和目标追踪
  • nacos的配置中心
  • MySQL性能优化配置终极指南
  • 算法讲解--有效三角形的个数
  • 将本地项目推送到远程github仓库
  • Promise的allSettled,all,race
  • RCE真实漏洞初体验
  • CGA老年综合评估汉密尔顿抑郁量表与认知评估联用
  • HTML 常用标签速查表
  • 智能机器人的技术革命:从感知到决策的全栈架构解析
  • 目前市面上arm64-v8a、armeabi-v7a设备的市占率有多少?为什么x86架构的手机越来越少?
  • 如何识别发票特殊版式?OCR大模型如何颠覆传统并保证准确率?
  • 力扣面试150(41/150)
  • 力扣-560.和为K的子数组
  • 第 9 篇:神经网络初探——当AI拥有了“大脑”,世界从此不同
  • JAVA语法糖
  • 高效算法的实现与优化是计算机科学的核心,直接决定了程序的性能和资源消耗。下面针对排序算法、搜索算法和动态规划,深入探讨其高效实现与关键优化技术。
  • 机器视觉对位印刷加工PCB板应用
  • LlamaIndex 和 Elasticsearch Rerankers:无与伦比的简洁
  • Power Compiler:漏电功耗、内部功耗、切换功耗及其计算方式(NLPM)