牛客NC362 字典序排列【中等 DFS Java/Go/PHP】
题目
题目链接:
https://www.nowcoder.com/practice/de49cf70277048518314fbdcaba9b42c
解题方法
DFS,剪枝
Java代码
import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param n int整型* @return int整型ArrayList*/public ArrayList<Integer> orderArray (int n) {//DFS 注意剪枝ArrayList<Integer> ans = new ArrayList<>();int end = 9;if (n < 9) {end = n;}for (int i = 1; i <= end ; i++) {dfs(i, n, ans);}return ans;}public void dfs(int cur, int n, ArrayList<Integer> ans) {if (cur > n) return;ans.add(cur);for (int i = 0; i <= 9 ; i++) {int num = cur * 10 + i;if (num > n) //剪枝break;dfs(num, n, ans);}}
}
Go代码
package main/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param n int整型* @return int整型一维数组*/
func orderArray(n int) []int {//dfs,注意剪枝ans := []int{}end := 9if n < end {end = n}for i := 1; i <= end; i++ {dfs(i, n, &ans)}return ans
}func dfs(cur, n int, ans *[]int) {if cur > n {return}*ans = append(*ans, cur)for i := 0; i <= 9; i++ {num := cur*10 + iif cur > n { //剪枝 很重要break}dfs(num, n, ans)}
}
PHP代码
<?php/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param n int整型 * @return int整型一维数组*/
function orderArray( $n )
{// dfs+剪枝$ans = [];$end = 9;if($n<9){$end= $n;}for($i=1;$i<=$end;$i++){dfs($i,$n,$ans);}return $ans;
}function dfs($cur,$n,&$ans){if($cur>$n){return;}$ans[count($ans)] = $cur;for($i=0;$i<=9;$i++){$num = $cur*10+$i;if($num > $n) break; //剪枝,非常关键dfs($num,$n,$ans);}
}
相关文章:

牛客NC362 字典序排列【中等 DFS Java/Go/PHP】
题目 题目链接: https://www.nowcoder.com/practice/de49cf70277048518314fbdcaba9b42c 解题方法 DFS,剪枝Java代码 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回…...

PHP获取文件路径getcwd()、__DIR__、__FILE__的区别
getcwd() getcwd() 是一个函数,它返回当前工作目录(CWD)的完整路径。当前工作目录是脚本开始执行时所在的目录,除非在脚本执行过程中通过 chdir() 函数进行了更改。 $cwd getcwd(); echo $cwd; // 输出当前工作目录的完整路径…...

Kafka(十三)监控与告警
目录 Kafka监控与告警1 解决方案1.2 基础知识JMX监控指标代理查看KafkaJMX远程端口 1.3 真实案例Kafka Exporter:PromethusPromethus Alert ManagerGrafana 1.3 实际操作部署监控和告警系统1.2.1 部署Kafka Exporter1.2.2 部署Prometheus1.2.3 部署AlertManger1.2.4 添加告警规…...

SBC3568启动升级,灵活更换动画logo
今天小智将会带着大家体验如何在openharmony sdk内替换开机logo和动态动画。 1. 更换开机logo 开机logo分为uboot阶段【logo.bmp】和kernel阶段【logo_kernel.bmp】的logo两个文件,对图片的要求是:必须为bmp格式,8或者24位深,且…...

v-if 与 v-show(vue3条件渲染)
v-if 是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。 v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。 相比之下&a…...

nuxt: generate打包后访问资源404问题
现象 使用Nuxt.js开发的个人页面,部署到nginx服务器中,/_nuxt/*.js、/_nuxt/*.css等静态问题不能访问,提示404错误。 而我们的这些资源文件是存在的。 解决方法 加上此处代码进行上下文配置 baseURL: /nuxt/ 此时在nginx配置 /nuxt 代理 lo…...

【图像超分】论文精读:Residual Non-local Attention Networks for Image Restoration(RNAN)
第一次来请先看这篇文章:【超分辨率(Super-Resolution)】关于【超分辨率重建】专栏的相关说明,包含专栏简介、专栏亮点、适配人群、相关说明、阅读顺序、超分理解、实现流程、研究方向、论文代码数据集汇总等) 文章目录 前言Abstract1 INTRODUCTION2 RELATED WORK3 RESIDU…...

AI大模型:大数据+大算力+强算法
前言:好久不见,甚是想念,我是辣条,我又回来啦,兄弟们,一别两年,还有多少老哥们在呢? 目录 一年半没更文我干啥去了? AI大模型火了 人工智能 大模型的理解 为什么学习…...

同名在线查询系统微信小程序源码下载支持多种流量主,附带系统教程
同名在线查询系统微信小程序源码下载支持多种流量主这是一款支持查询同名的一款微信小程序 该款小程序支持多种查询模式 重名查询,热度查询,概率香查询 源码免费下载地址抄笔记(chaobiji.cn)...

2024年5月26日 十二生肖 今日运势
小运播报:2024年5月26日,星期日,农历四月十九 (甲辰年己巳月庚寅日),法定节假日。 红榜生肖:马、猪、狗 需要注意:牛、蛇、猴 喜神方位:西北方 财神方位:…...

Vue 3 组件基础与模板语法详解
title: Vue 3 组件基础与模板语法详解 date: 2024/5/24 16:31:13 updated: 2024/5/24 16:31:13 categories: 前端开发 tags: Vue3特性CompositionAPITeleportSuspenseVue3安装组件基础模板语法 Vue 3 简介 1. Vue 3 的新特性 Vue 3引入了许多新的特性,以提高框…...

ACM实训冲刺第十八天
统计元音 代码 需要注意的是getchar()和gets(s) #include<stdio.h> #include<string.h> int main(){//测试实例个数int n;scanf("%d",&n) ;char s[100];getchar();while(n--){gets(s);int cnta0,cnte0,cnti0,cnto0,cntu0;for(int j0;j<strlen(…...

22AP70/SS927
Hi3519AV200又叫SS927V100和SD3402V100,或者叫22AP70,是一颗面向市场推出的专业超高清智能网络录像机SoC,专门用来替换之前的Hi3519AV100,2023年推出的业界AI-ISP超高性价比芯片!该芯片最高支持四路sensor输入…...

C++实现的代码行数统计器
代码在GitHubMaolinYe/CodeCounter: C20实现的代码统计器,代码量小于100行,可以统计目录下所有代码文件的行数 (github.com) 前段时间到处面试找实习,有技术负责人的负责人问我C写过多少行,5万还是10万,用来评估熟练度…...

C# 结合 JS 暴改腾讯 IM SDK Demo
目录 关于腾讯 IM SDK Demo 范例运行环境 设计思路 服务端生成地址 IM 服务端接收 IM 客户端程序 小结 关于腾讯 IM SDK Demo 腾讯云即时通信 IM SDK 提供了单聊、群聊、关系链、消息漫游、群组管理、资料管理、直播弹幕等功能,并提供完备的 App 接入及管…...

【Web】CISCN 2024初赛 题解(全)
目录 Simple_php easycms easycms_revenge ezjava mossfern sanic Simple_php 用php -r进行php代码执行 因为ban了引号,考虑hex2bin,将数字转为字符串 php -r eval(hex2bin(16进制)); 注意下面这段报错,因为加不了引号,开…...

【C++进阶】AVL树
0.前言 前面我们已经学习过二叉搜索树了,但如果我们是用二叉搜索树来封装map和set等关联式容器是有缺陷的,很可能会退化为单分支的情况,那样效率就极低了,那么有没有方法来弥补二叉搜索树的缺陷呢? 那么AVL树就出现了&…...

云部署最简单python web
最近在玩云主机,考虑将简单的web应用装上去,通过广域网访问一下,代码很简单,所以新手几乎不会碰到什么问题。 from flask import Flaskapp Flask(__name__)app.route(/) def hello_world():return Hello, World!app.route(/gree…...

【Pytorch】【MacOS】14.m1芯片使用mps进行深度模型训练
读者要先自行安装python以及anaconda,并且配置pytorch环境 第一步 测试环境 import torch # 判断macOS的版本是否支持 print(torch.backends.mps.is_available()) # 判断mps是否可用 print(torch.backends.mps.is_built())如果第一个语句为False,说明当前…...

go学习笔记-从圣经中抄录的接口值的思考
接口值 接口值,由两个部分组成,一个具体的类型和那个类型的值 下面4个语句中,变量w得到了3个不同的值。( 开始和最后的值是相同的) var w io.Writer w os.Stdout w new(bytes.Buffer) w nil var w io.Writer var…...

ICML 2024 时空数据(Spatial-Temporal)论文总结
2024ICML(International Conference on Machine Learning,国际机器学习会议)在2024年7月21日-27日在奥地利维也纳举行 (好像ICLR24现在正在维也纳开)。 本文总结了ICML 24有关时空数据(Spatial-temporal) 的相关论文…...

多线程(C++11)
多线程(C) 文章目录 多线程(C)前言一、std::thread类1.线程的创建1.1构造函数1.2代码演示 2.公共成员函数2.1 get_id()2.2 join()2.3 detach()2.4 joinable()2.5 operator 3.静态函数4.类的成员函数作为子线程的任务函数 二、call…...

HLS入门
目录 一、 内容介绍二、 理解HLS2.1 HLS是什么?与VHDL/Verilog编程技术有什么关系?2.2 HLS有哪些关键技术问题?目前存在什么技术局限性? 三、 HLS在Quartus上的实现3.1 配置环境3.2 测试 四、 参考链接 一、 内容介绍 理解HLSHLS在Quartus上…...

电信光猫的USB存储对外网开放访问
前提条件当然是要有公网IP地址了,没有的话去找电信索要,然后可以使用动态域名正常访问。 我的电信光猫发现共享访问速度还可以,会有31M/s左右的写入速度 但是有一个不方便的是,无法从外网提供访问,SMB协议所用的445端…...

世界上首位AI程序员诞生,AI将成为人类的对手吗?
3月13日,世界上第一位AI程序员Devin诞生,不仅能自主学习新技术,自己改Bug,甚至还能训练和微调自己的AI模型,表现已然远超GPT-4等“顶流选手”。 AI的学习速度如此之快,人类的教育能否跟上“机器学习”的速…...

什么是创造力?如何判断自己的创造力?
创造力,主要表现为创新思想、发现和创造新事物的能力,是知识,智力和能力的综合能力,尤其是在职业发展方面,创造力具有重要的意义,企业的核心竞争力就来源于创造力,这就需要具有创造力的员工来推…...

Elasticsearch集群搭建学习
Elasticsearch集群聚合、集群搭建 RestClient查询所有高亮算分控制 数据聚合DSL实现Bucket聚合DSL实现Metrics聚合RestAPI实现聚合 拼音分词器如何使用拼音分词器?如何自定义分词器?拼音分词器注意事项? 自动补全数据同步集群搭建ES集群结构创…...

数据库(vb.net+OleDB+Access)简易学生信息管理系统
在我们日常生活当中,数据库一词往往离不开我们的编程界,在学校、仓库等方面起着存储数据及数据关系作用的文件。相较于Excel,Access可以存储无限多的记录,内容也十分丰富,例如文本、数字、日期、T&F等。而且不需要…...

Android 自定义图片进度条
用系统的Progressbar,设置图片drawable作为进度条会出现图片长度不好控制,容易被截断,或者变形的问题。而我有个需求,使用图片背景,和图片进度,而且在进度条头部有个闪光点效果。 如下图: 找了…...

对话:用言语构建深刻的思想碰撞
对话:用言语构建深刻的思想碰撞 在写书中,对话是一种有力的工具,能与读者进行有效的沟通和交流,引发深思和反思。它不仅是信息传递的方式,更是加深情感、探讨主题和吸引读者参与的桥梁。你应从读者的角度思考…...