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

leetcode2081. k 镜像数字的和-hard

1 题目:k 镜像数字的和

官方标定难度:难

一个 k 镜像数字 指的是一个在十进制和 k 进制下从前往后读和从后往前读都一样的 没有前导 0 的 正 整数。

比方说,9 是一个 2 镜像数字。9 在十进制下为 9 ,二进制下为 1001 ,两者从前往后读和从后往前读都一样。
相反地,4 不是一个 2 镜像数字。4 在二进制下为 100 ,从前往后和从后往前读不相同。
给你进制 k 和一个数字 n ,请你返回 k 镜像数字中 最小 的 n 个数 之和 。

示例 1:

输入:k = 2, n = 5
输出:25
解释:
最小的 5 个 2 镜像数字和它们的二进制表示如下:
十进制 二进制
1 1
3 11
5 101
7 111
9 1001
它们的和为 1 + 3 + 5 + 7 + 9 = 25 。

示例 2:

输入:k = 3, n = 7
输出:499
解释:
7 个最小的 3 镜像数字和它们的三进制表示如下:
十进制 三进制
1 1
2 2
4 11
8 22
121 11111
151 12121
212 21212
它们的和为 1 + 2 + 4 + 8 + 121 + 151 + 212 = 499 。

示例 3:

输入:k = 7, n = 17
输出:20379000
解释:17 个最小的 7 镜像数字分别为:
1, 2, 3, 4, 5, 6, 8, 121, 171, 242, 292, 16561, 65656, 2137312, 4602064, 6597956, 6958596

提示:

2 <= k <= 9
1 <= n <= 30

2 solution

直接枚举,但是为了避免超时,需要优化一下,可以考虑枚举十进制的一半然后通过对称生成另一半,再去验证是否为k进制回文数。

代码

class Solution {
public:long long kMirror(int k, int n) {auto f = [&](long long m) {long long a = 0, q = m;while (m) {a = a * k + m % k;m /= k;}return a == q;};long long sum = 0;queue<long long> arr;for (int l = 1;; l++) {long long y = 0, z = l / 10, w = l;for (int x = l; x; x /= 10) {y = y * 10 + x % 10;z *= 10;w *= 10;}z += y;w += y;if (z && f(z)) {while(!arr.empty() && arr.front() < z){sum += arr.front();n--;if (n == 0) return sum;arr.pop();}sum += z;n--;if (n == 0) {return sum;}}if (f(w)) {arr.push(w);}}}
};

结果

在这里插入图片描述

相关文章:

leetcode2081. k 镜像数字的和-hard

1 题目&#xff1a;k 镜像数字的和 官方标定难度&#xff1a;难 一个 k 镜像数字 指的是一个在十进制和 k 进制下从前往后读和从后往前读都一样的 没有前导 0 的 正 整数。 比方说&#xff0c;9 是一个 2 镜像数字。9 在十进制下为 9 &#xff0c;二进制下为 1001 &#xff…...

Halcon 单目相机标定测量

文章目录 双面相机标定链接一维测量gen_cam_par_area_scan_division -为区域扫描相机生成一个相机参数元组&#xff0c;该相机的变形由分割模型建模。(相机自带参数)create_calib_data -创建Halcon 数据标定模型set_calib_data_cam_param -设置校准数据模型中摄像机的类型和初始…...

git子模块--常见操作

克隆仓库 标准化克隆流程 基本命令git clone <父仓库远程URL> [本地文件名] cd <本地仓库名> git submodule init # 初始化子模块配置 git submodule update # 拉取子模块内容一次性完成克隆和初始化流程 基本命令git clone --recurse-submodules <父仓库远…...

解决SQL Server SQL语句性能问题(9)——创建和更新统计对象

9.3. 创建和更新统计对象 与Oracle中的统计数据相对应,SQL Server中的统计对象,本专栏6.3节中也提到,数据库CBO依赖其为SQL语句产生最合适、最高效的查询计划。数据库CBO结合各类统计对象,并利用其内置的、复杂而高级的模型与算法,尽可能的为SQL语句计算和评估出所有候选…...

数据被泄露了怎么办?

数据泄露是严重的网络安全事件&#xff0c;需立即采取行动以降低风险。以下是关键应对步骤&#xff1a; 1. 确认泄露范围 核实泄露内容&#xff1a;确定泄露的是密码、财务信息、身份证号还是其他敏感数据。 评估来源&#xff1a;检查是个人设备被入侵、某平台漏洞&#xff0c…...

绩效管理缺乏数据支持,如何提高客观性?

要提高绩效管理的客观性&#xff0c;应从建立科学的指标体系、加强数据采集手段、引入自动化绩效工具、强化过程记录机制、定期评估与反馈优化五大方面着手。其中&#xff0c;建立科学的指标体系是关键基础。没有数据支撑的绩效体系&#xff0c;往往容易陷入主观打分、个人偏见…...

unity控制相机围绕物体旋转移动

记录一下控制相机围绕物体旋转与移动的脚本&#xff0c;相机操作思路分为两块&#xff0c;一部分为旋转&#xff0c;一部分为移动&#xff0c;旋转是根据当前center中心点的坐标&#xff0c;根据距离设置与默认的旋转进行位置移动&#xff0c;移动是根据相机的左右和前后进行计…...

线性代数:AI大模型的数学基石

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;10年以上C/C, C#, Java等多种编程语言开发经验&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开…...

【C/C++】从零开始掌握Kafka

文章目录 从零开始掌握Kafka一、Kafka 基础知识理解&#xff08;理论&#xff09;1. 核心组件与架构2. 重点概念解析 二、Kafka 面试重点知识梳理三、C 使用 Kafka 的实践&#xff08;librdkafka&#xff09;1. librdkafka 简介2. 安装 librdkafka 四、实战&#xff1a;高吞吐生…...

02_redis分布式锁原理

文章目录 一、redis如何实现分布式锁1. 使用 SETNX 命令2. 设置过期时间3. 释放锁4. 注意事项5. 示例代码 二、Java中分布式锁如何设置超时时间1. Redis分布式锁2. 基于Zookeeper的分布式锁3. 基于数据库的分布式锁注意事项 一、redis如何实现分布式锁 Redis 实现分布式锁是一…...

简单血条于小怪攻击模板

创建一个2d正方形&#xff08;9-Sliced&#xff09;命名为Player&#xff0c;在Player下面新建一个画布&#xff08;Canvas&#xff09;命名为PlayerHealthUI&#xff0c;在画布下面新建一个滑动条&#xff08;Slider&#xff09;命名为HealthBar 把PlayerHealthUI脚本挂载到Pl…...

Win11 系统登入时绑定微软邮箱导致用户名欠缺

Win11 系统登入时绑定微软邮箱导致用户名欠缺 解决思路 -> 解绑当前微软邮箱和用户名 -> 断网离线建立本地账户 -> 设置本地账户为Admin权限 -> 注销当前账户&#xff0c;登入新建的用户 -> 联网绑定微软邮箱 -> 删除旧的用户命令步骤 管理员权限打开…...

代码随想录算法训练营第四十六四十七天

卡码网题目: 110. 字符串接龙105. 有向图的完全联通106. 岛屿的周长107. 寻找存在的路径 其他: 今日总结 往期打卡 110. 字符串接龙 跳转: 110. 字符串接龙 学习: 代码随想录公开讲解 问题: 字典 strList 中从字符串 beginStr 和 endStr 的转换序列是一个按下述规格形成的序…...

华硕FL8000U加装16G+32G=48G内存条

华硕FL8000U加装16G32G48G内存条 一、华硕FL8000U加装内存条endl 一、华硕FL8000U加装内存条 相关视频链接: https://www.bilibili.com/video/BV1gw4dePED8/ endl...

前后端联调实战指南:Axios拦截器、CORS与JWT身份验证全解析

前言 在现代Web开发中&#xff0c;前后端分离架构已成为主流&#xff0c;而前后端联调则是开发过程中不可避免的关键环节。本文将深入探讨前后端联调中的三大核心技术&#xff1a;Axios拦截器的灵活运用、CORS跨域问题的全面解决方案以及JWT身份验证的安全实现。通过本文&…...

java高级 -Junit单元测试

Junit单元测试就是针对最小的功能&#xff1a;方法&#xff0c;编写测试代码对其进行正确性测试。用main方法进行测试的弊端是一个方法测试失败可能会影响别的方法的测试&#xff0c;也无法得到测试报告&#xff0c;需要我们自己观察数据是否正确。 此时&#xff0c;我们就需要…...

在 UVM验证环境中,验证 Out-of-Order或 Interleaving机制

在 UVM验证环境中,验证 Out-of-Order或 Interleaving机制 摘要:在 UVM (Universal Verification Methodology) 验证环境中,验证 Out-of-Order (乱序) 或 Interleaving (交错) 机制是验证复杂 SoC (System on Chip) 设计的重要任务,尤其是在验证高速接口(如 PCIe、AXI)、缓…...

V9数据库替换授权

文章目录 环境文档用途详细信息 环境 系统平台&#xff1a;Linux x86-64 Red Hat Enterprise Linux 7 版本&#xff1a;9.0 文档用途 1、本文档用于指导V9数据库替换授权。 2、V9数据库授权文件为license.dat。 详细信息 1、上传新的授权文件到服务器并修改授权文件属主为…...

勇闯Chromium—— Chromium的多进程架构

问题 构建一个永不崩溃或挂起的渲染引擎几乎是不可能的,构建一个绝对安全的渲染引擎也几乎是不可能的。 从某种程度上来说,2006 年左右的网络浏览器状态与过去单用户、协作式多任务操作系统的状况类似。正如在这样的操作系统中,一个行为不端的应用程序可能导致整个系统崩溃…...

Go语言中常量的命名规则详解

1. 常量的基本命名规则 1.1. 命名格式 1. 使用const关键字声明&#xff1b; 2. 命名格式&#xff1a;const 常量名 [类型] 值&#xff1b; 3. 类型可以省略&#xff0c;由编译器推断&#xff1b; 1.2. 命名风格 大小写规则&#xff1a; 1. 首字母大写&#xff1a;导出常…...

软件质量保证与测试实验

课程  软件质量保证与测试 目的&#xff1a;练习软件测试中白盒测试方法 内容&#xff1a; 测试如下程序段&#xff1a; #include <stdio.h>int main() {int i 1, n1 0, n2 0;float sum 0.0;float average;float score[100];printf("请输入分…...

历年华东师范大学保研上机真题

2025华东师范大学保研上机真题 2024华东师范大学保研上机真题 2023华东师范大学保研上机真题 在线测评链接&#xff1a;https://pgcode.cn/school?classification1 简单一位数代数式计算 题目描述 给一个小学生都会算的1位数与1位数运算的代数式&#xff0c;请你求出这个表…...

【C++】什么是静态库?什么是动态库?

静态库与动态库详解 静态库和动态库是软件开发中两种不同的代码共享和重用机制&#xff0c;它们在链接方式、内存使用和部署方式上有显著区别。 一、静态库(Static Library) 基本概念 静态库是在编译期间被完整复制到最终可执行文件中的预编译代码集合。 主要特点 链接时…...

项目阅读:Instruction Defense

总目录 大模型安全相关研究&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/142132328 https://learnprompting.org/docs/prompt_hacking/defensive_measures/instruction https://www.doubao.com/chat/6945469301219586 速览 指令防御&#xff08;Instructio…...

springboot中拦截器配置使用

文章目录 前置拦截器代码拦截器注册疑问 前置 你使用 javaspringboot 常用在&#xff1a; 身份验证与授权&#xff0c;使用拦截器检查用户的身份验证状态和权限级别&#xff0c;确保只有经过验证且有适当权限的用户能够访问特定资源日志记录与审计性能分析与监控&#xff0…...

用 Python 构建自动驾驶的实时通信系统:让车辆“交流”起来!

用 Python 构建自动驾驶的实时通信系统:让车辆“交流”起来! 自动驾驶技术正加速变革全球交通体系,它不仅是机器学习与计算机视觉的胜利,更是一场 高效通信架构的革命。自动驾驶汽车需要实时交换信息,比如: 传感器数据(雷达、激光雷达、摄像头)V2V(车与车通信)V2X(…...

在机器学习中,L2正则化为什么能够缓过拟合?为何正则化等机制能够使一个“过度拟合训练集”的模型展现出更优的泛化性能?正则化

在现代机器学习的发展历程中&#xff0c;过拟合&#xff08;Overfitting&#xff09;始终是亟需克服的重要挑战。其表现如同在训练数据上构建过度复杂的映射函数&#xff0c;虽能实现近乎完美的拟合&#xff0c;但其泛化能力却显著受限&#xff0c;导致模型在测试集或实际应用中…...

day36 python神经网络训练

目录 一、数据准备与预处理 二、数据集划分与归一化 三、构建神经网络模型 四、定义损失函数和优化器 五、训练模型 六、评估模型 在机器学习和深度学习的实践中&#xff0c;信贷风险评估是一个非常重要的应用场景。通过构建神经网络模型&#xff0c;我们可以对客户的信用…...

k8s部署ELK补充篇:kubernetes-event-exporter收集Kubernetes集群中的事件

k8s部署ELK补充篇&#xff1a;kubernetes-event-exporter收集Kubernetes集群中的事件 文章目录 k8s部署ELK补充篇&#xff1a;kubernetes-event-exporter收集Kubernetes集群中的事件一、kubernetes-event-exporter简介二、kubernetes-event-exporter实战部署1. 创建Namespace&a…...

【Excel VBA 】窗体控件分类

一、Excel 窗体控件分类 Excel 中的窗体控件分为两大类型&#xff0c;适用于不同的开发需求&#xff1a; 类型所在选项卡特点表单控件开发工具 → 插入 → 表单控件简单易用&#xff0c;直接绑定宏&#xff0c;兼容性好&#xff0c;适合基础自动化操作。ActiveX 控件开发工具…...