解决leetcode第3850题.统计结果等于k的序列数目
3850.统计结果等于K的序列数目难度困难问题描述给你一个整数数组nums和一个整数k。从初始值val1开始从左到右处理nums。在每个下标i处你必须恰好选择以下操作之一将val乘以nums[i]。将val除以nums[i]。保持val不变。在处理完所有元素后当且仅当val的最终有理数值恰好等于k时才认为val等于k。返回生成valk的不同选择序列的数量。注意除法是有理数除法精确除法而不是整数除法。例如2/41/2。示例1:输入:nums[2,3,2],k6输出:2解释:以下2个不同的选择序列导致valk序列 对nums[0]的操作 对nums[1]的操作 对nums[2]的操作 最终val1 乘法val1*22 乘法val2*36 保持val不变 62 保持val不变 乘法val1*33 乘法val3*26 6示例2:输入:nums[4,6,3],k2输出:2解释:以下2个不同的选择序列导致valk序列 对nums[0]的操作 对nums[1]的操作 对nums[2]的操作 最终val1 乘法val1*44 除法val4/62/3 乘法val(2/3)*32 22 保持val不变 乘法val1*66 除法val6/32 2示例3:输入:nums[1,5],k1输出:3解释:以下3个不同的选择序列导致valk序列 对nums[0]的操作 对nums[1]的操作 最终val1 乘法val1*11 保持val不变 12 除法val1/11 保持val不变 13 保持val不变 保持val不变 1提示:1nums.length191nums[i]61k10**15问题分析对于元素个数为n的整数序列nums其元素是固定不变的生成valk的不同选择序列实际上是对这些元素使用*、/和保持不变形成各种操作序列为此约定对于*、/和保持不变三种操作对应使用字符*、/和.来表示。对整数序列nums中每一个元素进行操作首先应找出对各种元素进行可能操作的序列然后再来判断这些操作结果是不是等于k如果等于k则统计valk的记数器记数并输出这种操作序列最后再把记数器的值输出即可。程序如下#对于n个元素的数组每个元素都要进行三种处理*/.中的一种处理(其中.表示保持不变共有多少种处理排列组合 def get_all_list(n): if n 1: return [., /, *] else: b get_all_list(n - 1) t [] for i in b: c . i t.append(c) c / i t.append(c) c * i t.append(c) return t #对于一次处理返回处理结果s表示一次处理如*3、/2或者.5等等val表示处理结果 def analysis_str(s,val): if s[0].: return val else: valeval(str(val)s) return val #根据nums数组和操作符s生成操作序列 def create_operate_array(nums,s): tlist(zip(s,nums)) clist(i[0]str(i[1]) for i in t) return c #检查操作序列的操作结果是否等k def check_operate_array_result(operate_array,k): m[] n[] for i in operate_array: if i[0]*: m.append(i) else: n.append(i) m.extend(n) val1 for i in m: valanalysis_str(i,val) return valk #主程序 numseval(input(pls input nums)) kint(input(pls input k)) nlen(nums) operate_arrayget_all_list(n) c0 for i in operate_array: val1 operate_number_array create_operate_array(nums,i) if check_operate_array_result(operate_number_array, k): print(操作序列,operate_number_array) c 1 print(不同选择序列数量为,c)运行实例一pls input nums[2,3,4,5,6]pls input k12操作序列 [.2, *3, *4, .5, .6]操作序列 [*2, .3, .4, .5, *6]操作序列 [/2, .3, *4, .5, *6]不同选择序列数量为 3运行实例二pls input nums[1,1,5]pls input k1操作序列 [.1, .1, .5]操作序列 [/1, .1, .5]操作序列 [*1, .1, .5]操作序列 [.1, /1, .5]操作序列 [/1, /1, .5]操作序列 [*1, /1, .5]操作序列 [.1, *1, .5]操作序列 [/1, *1, .5]操作序列 [*1, *1, .5]不同选择序列数量为 9

相关新闻

AI大模型就业市场2026:AI岗位需求暴涨!年薪百万?大模型工程师成香饽饽,你跟上了吗?

AI大模型就业市场2026:AI岗位需求暴涨!年薪百万?大模型工程师成香饽饽,你跟上了吗?

2025年AI大模型人才市场火爆,需求激增超40%,科技巨头和传统行业争抢,中国互联网大厂薪资可达百万元。AI大模型岗位薪资中位数超50万元,顶尖人才年薪百万。核心技能包括Python、数据结构与算法、Transformer架构等。热门方向有大模…

2026/7/7 20:50:49 阅读更多 →
# 震惊!GPT-5、Gemini Pro还在闭门造车?开源社区已实现惊天逆袭!10款重磅模型颠覆AI格局!

# 震惊!GPT-5、Gemini Pro还在闭门造车?开源社区已实现惊天逆袭!10款重磅模型颠覆AI格局!

2026年初,开源大模型领域迎来技术爆发期,多项模型性能超越闭源巨头。Arcee AI Trinity Large革新注意力机制,月之暗面Kimi K2.5突破万亿参数并融合多模态,Step 3.5 Flash主打速度,Qwen3-Coder-Next以小博大碾压代码任务…

2026/7/7 21:43:00 阅读更多 →
从零到精通:7步解锁人工智能大模型开发全栈技能!

从零到精通:7步解锁人工智能大模型开发全栈技能!

本文提供了一份完整的人工智能学习路线图,分为7个阶段:打好数学与编程基础、入门机器学习、深入学习深度学习、探索自然语言处理、掌握大模型核心技术(Transformer与预训练)、实战大模型应用以及持续进阶。文章详细介绍了每个阶段…

2026/7/7 10:00:11 阅读更多 →

最新新闻

git branch命令详解:分支本质、常用选项与工程实践

git branch命令详解:分支本质、常用选项与工程实践

1. 为什么“git branch”是每个开发者每天要敲十次的命令 你有没有过这种时刻:早上打开终端,顺手敲了 git status ,结果发现工作区一片混乱, git log 翻了三页还是找不到上周写的那个登录校验逻辑;或者在团队群里看…

2026/7/7 21:43:49 阅读更多 →
百度网盘提取码神器:5秒极速获取的终极解决方案

百度网盘提取码神器:5秒极速获取的终极解决方案

百度网盘提取码神器:5秒极速获取的终极解决方案 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘加密资源而烦恼吗?每次满怀期…

2026/7/7 21:41:47 阅读更多 →
Simple Live:四大主流直播平台聚合观看解决方案的技术实现

Simple Live:四大主流直播平台聚合观看解决方案的技术实现

Simple Live:四大主流直播平台聚合观看解决方案的技术实现 【免费下载链接】dart_simple_live 简简单单的看直播 项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live Simple Live是一个基于Flutter开发的跨平台直播聚合应用,通过…

2026/7/7 21:39:46 阅读更多 →
Sitecore CMS与Vue.js组合应用:2个信息泄露点与1个模板注入漏洞挖掘复盘

Sitecore CMS与Vue.js组合应用:2个信息泄露点与1个模板注入漏洞挖掘复盘

Sitecore CMS与Vue.js组合应用中的安全风险深度剖析1. 企业级技术栈的安全挑战现状在当今数字化转型浪潮中,企业级内容管理系统(CMS)与现代化前端框架的组合已成为构建数字体验平台的主流选择。Sitecore作为全球领先的企业级CMS解决方案&…

2026/7/7 21:39:46 阅读更多 →
YOLOv8 解耦头与 Anchor-Free 实战:COCO 数据集 3 种 Head 配置对比

YOLOv8 解耦头与 Anchor-Free 实战:COCO 数据集 3 种 Head 配置对比

YOLOv8 解耦头与 Anchor-Free 实战:COCO 数据集 3 种 Head 配置对比目标检测领域近年来经历了从 Anchor-Based 到 Anchor-Free 的范式转变,而 YOLOv8 作为 Ultralytics 公司推出的最新模型,其核心创新之一便是将解耦头(Decoupled …

2026/7/7 21:33:40 阅读更多 →
Excel中PI()函数的精度本质与工程价值

Excel中PI()函数的精度本质与工程价值

1. 项目概述:Excel里那个看似简单的PI()函数,远比你想象的更关键 在Excel里输入 PI() ,回车,得到3.14159265358979——这个结果你可能见过无数次,甚至觉得它不过是个“内置常数”,点开函数向导、选中PI()…

2026/7/7 21:31:36 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻