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

leetcode1377.T秒后青蛙的位置

思路源自灵神自底向上求解

class Solution {private long dfs(List<List<Integer>> graph, int target, int cur, int parent, int time) {//1.没有剩余时间了,如果当前节点就是目标,那么返回1,否则0if(time==0)return cur == target ? 1 : 0;//2.如果还有剩余时间但是当前点就是目标,那么如果这个目标没有孩子节点就返回1,否则0if(cur==target)return graph.get(cur).size() == 1 ? 1 : 0;//3.有时间且还没有找到目标,那么向下递归累乘分母for (int child : graph.get(cur)) {if (child != parent) {long product = dfs(graph, target, child, cur, time - 1);//3.1向下递归只有找到目标才不会返回0,这里说明找到目标,那么就累乘结果if (product != 0) {return product * (graph.get(cur).size() - 1);}}}//4.向下递归没有找到目标直接返回0return 0;}public double frogPosition(int n, int[][] edges, int t, int target) {//1.用无向图构造一棵树List<List<Integer>> graph = new ArrayList<>();for (int i = 0; i <= n; i++) {graph.add(new ArrayList());}graph.get(1).add(0);//给根节点添加一个虚拟头节点for (int[] edge : edges) {int u = edge[0];int v = edge[1];graph.get(u).add(v);graph.get(v).add(u);}//2.dfs求结果的分母乘积long product = dfs(graph, target, 1, 0, t);//3.如果是0说明目标不能在限定时间内刚好到达或者不存在return product == 0 ? 0 : 1.0 / product;}
}

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

相关文章:

  • 基于Yolo的图像识别中的特征融合
  • C语言自定义数据类型详解
  • 社交网站开发 转发建设网站的好处和优点
  • VBUS(Voltage Bus,电压总线) 是什么?
  • 前端做的网站潮阳网站制作
  • 北京哪家公司做网站好网站建设开发报价方案模板
  • 国家商标注册官网查询系统南京seo顾问
  • cpa单页网站怎么做sae wordpress 4.3
  • Vite与Webpack完全指南:从零开始理解前端构建工具
  • [优选算法专题六.模拟 ——NO.37~39 替换所有的问号、提莫攻击、Z 字形变换]
  • 【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 4
  • HOT100题打卡第34天——二分查找
  • 电子商务网站的作用单位网站建设情况
  • 公司如何申请一个网站网址建设网站重庆
  • RedisTemplate 实战:Spring 项目中 Redis 操作的全维度指南
  • Doris Docker 完整部署指南
  • C语言算法:排序算法入门
  • seo简单优化sem和seo都包括什么
  • 舞蹈培训机构网站建设上门做网站公司哪家好
  • Unity Tilemap小方块(瓦片)颜色的更改
  • 中国建设银行网站首页u盾登入网站建设小
  • Java 基本语法:从小白到大师的编程之路!
  • SPARQL 1.1 BNF浅析
  • Java基础——集合进阶用到的数据结构知识点4
  • 四、神经网络
  • 数据结构之红黑树
  • 上海 网站备案拍照推广公众号平台的公司
  • 自学网站有哪些深圳建企业网站
  • 课程网站开发合同英文网站有哪些
  • Android内核进阶之pcm硬件参数最小约束值snd_pcm_hw_param_first:用法实例(八十七)