手机上如何做微电影网站解决方案网站

张小明 2026/1/2 3:13:33
手机上如何做微电影网站,解决方案网站,百度广告联盟赚广告费,wordpress上面的模板2025-12-17#xff1a;优惠券校验器。用go语言#xff0c;你有三个等长数组 code、businessLine 和 isActive#xff0c;分别记录 n 个优惠券的标识符、所属业务线和是否有效。 把某张券视为“合格”的条件是#xff1a;标识符非空且只包含字母、数字或下划线#xff1b;所…2025-12-17优惠券校验器。用go语言你有三个等长数组 code、businessLine 和 isActive分别记录 n 个优惠券的标识符、所属业务线和是否有效。把某张券视为“合格”的条件是标识符非空且只包含字母、数字或下划线所属业务线为四种中的一种“electronics”、“grocery”、“pharmacy” 或 “restaurant”并且 isActive 为 true。结果应返回所有合格券的标识符组成的列表排序规则是先按业务线的固定顺序electronics → grocery → pharmacy → restaurant分组然后在每个组内按标识符的字典序从小到大排列。n code.length businessLine.length isActive.length。1 n 100。0 code[i].length, businessLine[i].length 100。code[i] 和 businessLine[i] 由可打印的 ASCII 字符组成。isActive[i] 的值为 true 或 false。输入 code [“SAVE20”,“”,“PHARMA5”,“SAVE20”], businessLine [“restaurant”,“grocery”,“pharmacy”,“restaurant”], isActive [true,true,true,true]。输出 [“PHARMA5”,“SAVE20”]。解释第一个优惠券有效。第二个优惠券的标识符为空无效。第三个优惠券有效。第四个优惠券的标识符包含特殊字符 无效。题目来自力扣3606。步骤描述初始化容器程序创建了一个长度为 4 的切片groups里面每个元素是一个字符串切片对应 4 个业务线的分组顺序groups[0]→ electronicsgroups[1]→ grocerygroups[2]→ pharmacygroups[3]→ restaurant另外还创建一个空的ans切片用于存放最终结果。遍历输入数据依次对每个 i (0 ≤ i n) 做以下判断检查code[i]是否非空字符串。调用check函数判断code[i]是否只包含字母、数字或下划线并且isActive[i]为 true。check内部遍历code[i]的每个字符用unicode.IsLetter和unicode.IsDigit判断如果出现非字母/数字/下划线则返回 false。如果check返回 true说明券是“合格”的。对合格的券根据businessLine[i]决定放入哪个分组如果是electronics放入groups[0]如果是grocery放入groups[1]如果是pharmacy放入groups[2]如果是restaurant放入groups[3]不合格的券包括空字符串、非法字符、业务线不匹配但题中业务线只有四种合法如果给的业务线不在四个之中则不放入代码中switch默认不处理就忽略。分组内部排序遍历groups里的四个切片对每个业务线分组内的标识符列表调用sort.Strings进行字典序排序。结果合并按顺序electronics → grocery → pharmacy → restaurant将每个分组排序后的内容依次追加到ans中。返回结果最终ans就是按照先业务线固定顺序、再组内字典序排列的所有合格券标识符列表。在给定输入的例子中SAVE20→ 合格业务线restaurant→ 放入groups[3]→ 空字符串 → 不合格PHARMA5→ 合格业务线pharmacy→ 放入groups[2]SAVE20→ 包含字符 → 不合格最后groups[2]排序后为[PHARMA5]groups[3]排序后为[SAVE20]先electronics组空→grocery组空→pharmacy组PHARMA5→restaurant组SAVE20最终结果[PHARMA5, SAVE20]时间复杂度分析遍历 n 张券O(n)对每个券check函数要遍历其标识符的每个字符设所有code[i]总长度为 L则总检查字符次数为 O(L)分组内部排序最多 n 个字符串分成 4 组最坏情况所有合格券在同一组需要对该组 m 个字符串排序比较开销是 O(m log m)m ≤ n所以排序总时间 O(n log n)因为 4 组总和 ≤ n每组排序复杂度相加 ≤ n log n 级别最终遍历 groups 合并结果 O(n)总时间复杂度O(L n log n)其中 L 是所有code[i]字符总数。空间复杂度分析groups数组及其内部切片存储所有合格券标识符总空间 O(n)排序可能需额外 O(log n) 递归栈空间Go 的sort.Strings用快速排序结果ans额外存储 n 个字符串引用和groups里的引用相同不重复占用字符串本身空间但切片结构占用 O(n)因此总额外空间复杂度O(n)主要是存储合格券标识符的引用和分组结构不包括输入数据占用的空间。Go完整代码如下packagemainimport(fmtsortunicode)funccheck(codestring,isActivebool)bool{for_,c:rangecode{ifc!_!unicode.IsLetter(c)!unicode.IsDigit(c){returnfalse}}returnisActive}funcvalidateCoupons(code[]string,businessLine[]string,isActive[]bool)[]string{groups:make([][]string,4)fori:rangegroups{groups[i]make([]string,0)}ans:make([]string,0)fori:0;ilen(code);i{ifcode[i]!check(code[i],isActive[i]){switchbusinessLine[i]{caseelectronics:groups[0]append(groups[0],code[i])casegrocery:groups[1]append(groups[1],code[i])casepharmacy:groups[2]append(groups[2],code[i])caserestaurant:groups[3]append(groups[3],code[i])}}}for_,group:rangegroups{sort.Strings(group)ansappend(ans,group...)}returnans}funcmain(){code:[]string{SAVE20,,PHARMA5,SAVE20}businessLine:[]string{restaurant,grocery,pharmacy,restaurant}isActive:[]bool{true,true,true,true}result:validateCoupons(code,businessLine,isActive)fmt.Println(result)}Python完整代码如下# -*-coding:utf-8-*-importrefromtypingimportListdefcheck(code:str,is_active:bool)-bool:检查优惠码是否只包含字母、数字和下划线并且处于激活状态ifnotcode:returnFalse# 使用正则表达式检查是否只包含字母、数字和下划线ifnotre.fullmatch(r[\w],code):returnFalsereturnis_activedefvalidate_coupons(code:List[str],business_line:List[str],is_active:List[bool])-List[str]:验证优惠码并按业务线分类排序# 定义业务线分组顺序business_order[electronics,grocery,pharmacy,restaurant]# 初始化分组字典groups{biz:[]forbizinbusiness_order}# 遍历所有优惠码foriinrange(len(code)):# 验证优惠码ifcheck(code[i],is_active[i]):bizbusiness_line[i]# 如果业务线在预定义列表中则添加到对应分组ifbizingroups:groups[biz].append(code[i])# 对每个分组进行排序并按顺序合并结果result[]forbizinbusiness_order:groups[biz].sort()result.extend(groups[biz])returnresultdefmain():# 测试数据code[SAVE20,,PHARMA5,SAVE20]business_line[restaurant,grocery,pharmacy,restaurant]is_active[True,True,True,True]# 调用验证函数resultvalidate_coupons(code,business_line,is_active)# 输出结果print(result)# 预期输出: [SAVE20] (因为: 为空, SAVE20包含非法字符, 只有SAVE20和PHARMA5有效但PHARMA5属于pharmacy分组排在restaurant之后)if__name____main__:main()C完整代码如下#includeiostream#includevector#includestring#includealgorithm#includecctypeusingnamespacestd;boolcheck(conststringcode,boolisActive){// 检查优惠码是否只包含字母、数字和下划线for(charc:code){if(c!_!isalnum(c)){returnfalse;}}returnisActive;}vectorstringvalidateCoupons(constvectorstringcode,constvectorstringbusinessLine,constvectorboolisActive){// 初始化4个分组对应electronics, grocery, pharmacy, restaurantvectorvectorstringgroups(4);vectorstringresult;for(size_t i0;icode.size();i){// 验证优惠码if(!code[i].empty()check(code[i],isActive[i])){// 根据业务线添加到对应分组if(businessLine[i]electronics){groups[0].push_back(code[i]);}elseif(businessLine[i]grocery){groups[1].push_back(code[i]);}elseif(businessLine[i]pharmacy){groups[2].push_back(code[i]);}elseif(businessLine[i]restaurant){groups[3].push_back(code[i]);}}}// 对每个分组排序并合并结果for(autogroup:groups){sort(group.begin(),group.end());for(constautocoupon:group){result.push_back(coupon);}}returnresult;}intmain(){vectorstringcode{SAVE20,,PHARMA5,SAVE20};vectorstringbusinessLine{restaurant,grocery,pharmacy,restaurant};vectorboolisActive{true,true,true,true};vectorstringresultvalidateCoupons(code,businessLine,isActive);// 输出结果cout[;for(size_t i0;iresult.size();i){cout\result[i]\;if(i!result.size()-1){cout, ;}}cout]endl;return0;}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

全国哪个餐饮品牌的网站做的好做网站如何适应分辨率

一、项目介绍 基于深度学习的苹果腐烂检测系统 是一个专注于检测苹果腐烂状态的智能系统,采用先进的深度学习技术(如YOLOv10或其他目标检测算法)实现高精度检测。该系统能够自动识别并定位腐烂的苹果(damaged_apple)&a…

张小明 2025/12/31 8:48:45 网站建设

望城区城市建设投资集团门户网站wordpress主题包

学长亲荐8个AI论文软件,本科生毕业论文轻松搞定! 论文写作的“隐形助手”:AI工具如何改变你的学术之路 在当今信息爆炸的时代,论文写作早已不再是单一的脑力劳动,而是一场与时间、效率和质量的博弈。对于本科生而言&am…

张小明 2026/1/1 18:24:42 网站建设

公司网站备案网址wordpress 图片属性

Beyond Compare 比对代码时,需要过滤干扰项,让比对时更加清晰 一下以Android项目过滤例 排除文件 *.iml local.properties AndroidManifest_target.xml排除文件夹 .git .svn .gradle .idea build release .cxx

张小明 2025/12/28 16:23:06 网站建设

asp.net网站结构赣州人才网赣州九一人才

题目: 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点…

张小明 2025/12/30 12:15:37 网站建设

营销方案 网站网络工程就业岗位有哪些

昆仑芯与PaddlePaddle的软硬协同:重塑AI推理效率的技术闭环 在大模型浪潮席卷各行各业的今天,一个看似简单的问题却困扰着无数开发者和企业用户:为什么我部署的本地LLM响应这么慢?为什么私有化知识库总感觉“卡一顿”才出答案&am…

张小明 2025/12/27 0:28:31 网站建设

前几年做啥网站能致富wordpress 站点网络

seelen ui官方版介绍 Seelen UI电脑版是一款旨在增强Windows桌面体验的工具,专注于定制和生产力。它顺利集成到你的系统中,提供一系列功能,让你能够个性化桌面并优化工作流程。 seelen ui中文版能够定制个性桌面的优化助手。软件内提供了各…

张小明 2025/12/27 0:27:59 网站建设