2454. 下一个更大元素 IV(2023-12-12)

力扣每日一题 题目:2454. 下一个更大元素 IV 日期:2023-12-12 用时:35 m 09 s 时间:614ms 内存:57.18MB 代码: class Solution { public int[] secondGreaterElement(int[] nums) { int[] res = new int[nums.length]; Arrays.fill(res, -1); List<Integer> list1 = new ArrayList<>(); List<Integer> list2 = new ArrayList<>(); for (int i = 0; i < nums.length; i++) { while (!list2.isEmpty() && nums[list2.get(list2.size() - 1)] < nums[i]) { res[list2.get(list2.size() - 1)] = nums[i]; list2.remove(list2.size() - 1); } int j = list1.size(); for(;j>0;j--){ if(nums[list1.get(j - 1)] >= nums[i]){ break; } } while (j<list1.size()) { list2.add(list1.g...

avatar 龙儿之家 发表于 2023-12-12

沈阳四家万达(2023-12-09、2023-12-10)

全运路万达8枚 铁西万达4枚 北一路万达16枚 太原街万达8枚 (摘自小红书https://www.xiaohongshu.com/explore/65758b310000000006020803?m_source=mengfanwetab)

avatar 龙儿之家 发表于 2023-12-11

iKuai 开启 OpenVPN 配置国内外分流指南!

一、部署环境 1.1、VMware ESXi VMware ESXi 1.2、iKuai镜像 iKuai ISO 1.3、OpenVPN客户端 OpenVPN Client 二、安装iKuai 2.1、上传镜像至ESXi 2.2、创建iKuai 2.3、首次开机配置 2.4、二次开机配置 三、配置OpenVPN http://192.168.6.104 3.1、客户端默认配置说明 其中14和15默认是注释的,我们不用开启、 1. client: 表示这是OpenVPN的客户端配置文件。 2. dev-type tun 和 dev tunx: 指定OpenVPN设备的类型和名称。tun 是一种虚拟网络设备类型,tunx 是该设备的名称。 3. proto udp: 指定OpenVPN使用UDP协议进行通信。 4. tun-mtu 1400: 设置TUN设备的最大传输单元(MTU),限制了通过该通道的数据包的大小。 5. cipher BF-CBC: 指定OpenVPN使用的加密算法,此处使用的是BF-CBC算法。 6. comp-lzo: 启用压缩以提高数据传输效率。 7. remote 192.168.6.104 1194: 指定服务器的IP地址和端口号。 8. resolv-retry infinite: 在连接失败时,持续尝试无限次重新解析域名。 9. nobind: 防止OpenVPN在本地端口上绑定,允许客户端连接到任意可用的本地端口。 10. persist-key 和 persist-tun: 如果连接被意外中断,OpenVPN将保持密钥和TUN/TAP设备的持久性。 11. verb 3: 设置日志详细级别,值为3意味着显示详细的日志信息。 12. key-direction 1: 指定密钥方向,通常与加密密钥相关。 13. script-security 2...

avatar 杨杨得亿 发表于 2023-12-08

iKuai 开启 OpenVPN 配置国内外分流指南!

一、部署环境 1.1、VMware ESXi VMware ESXi 1.2、iKuai镜像 iKuai ISO 1.3、OpenVPN客户端 OpenVPN Client 二、安装iKuai 2.1、上传镜像至ESXi 2.2、创建iKuai 2.3、首次开机配置 2.4、二次开机配置 三、配置OpenVPN http://192.168.6.104 3.1、客户端默认配置说明 其中14和15默认是注释的,我们不用开启、 1. client: 表示这是OpenVPN的客户端配置文件。 2. dev-type tun 和 dev tunx: 指定OpenVPN设备的类型和名称。tun 是一种虚拟网络设备类型,tunx 是该设备的名称。 3. proto udp: 指定OpenVPN使用UDP协议进行通信。 4. tun-mtu 1400: 设置TUN设备的最大传输单元(MTU),限制了通过该通道的数据包的大小。 5. cipher BF-CBC: 指定OpenVPN使用的加密算法,此处使用的是BF-CBC算法。 6. comp-lzo: 启用压缩以提高数据传输效率。 7. remote 192.168.6.104 1194: 指定服务器的IP地址和端口号。 8. resolv-retry infinite: 在连接失败时,持续尝试无限次重新解析域名。 9. nobind: 防止OpenVPN在本地端口上绑定,允许客户端连接到任意可用的本地端口。 10. persist-key 和 persist-tun: 如果连接被意外中断,OpenVPN将保持密钥和TUN/TAP设备的持久性。 11. verb 3: 设置日志详细级别,值为3意味着显示详细的日志信息。 12. key-direction 1: 指定密钥方向,通常与加密密钥相关。 13. script-security 2...

avatar 杨杨得亿 发表于 2023-12-08

2008. 出租车的最大盈利(2023-12-08)

力扣每日一题 题目:2008. 出租车的最大盈利 简短说明 今天的解题有点曲折,完全是一步一步优化来的,看上面的截图,最开始的超时,超时后我加了记忆化搜索,虽然通过了,但是执行时间不太理想,接下来我稍微优化了下,但是执行时间基本没动过,接下来,又尝试着去掉递归,这次效果很显著,执行时间直接从2000多毫秒降低到了18毫秒 过程 下面我分别把这四次的代码都展示出来,记录下每次的优化,代码展示顺序是按照上面的截图从下往上的 超出时间限制 class Solution { public long maxTaxiEarnings(int n, int[][] rides) { List<int[]>[] prices = new ArrayList[n+1]; for(int[] ride:rides){ if(prices[ride[1]]==null){ prices[ride[1]] = new ArrayList<>(); } prices[ride[1]].add(new int[]{ride[0],ride[1]-ride[0]+ride[2]}); } return dfs(n,prices); } long dfs(int index,List<int[]>[] prices){ if(index==1){ return 0; } long res = dfs(index-1,prices); if(prices[index]!=null){ for(int[] price:prices[index]){ res = Math.max(res,dfs(price[0...

avatar 龙儿之家 发表于 2023-12-08

1466. 重新规划路线(2023-12-07)

力扣每日一题 题目:1466. 重新规划路线 日期:2023-12-07 用时:45 m 36 s 时间:37ms 内存:69.64MB 代码: class Solution { public int minReorder(int n, int[][] connections) { list = new List[n]; Arrays.setAll(list, k -> new ArrayList<>()); for (int[] connection : connections) { int start = connection[0]; int end = connection[1]; list[start].add(new int[] {end, 1}); list[end].add(new int[] {start, 0}); } return dfs(0, -1); } List<int[]>[] list; private int dfs(int index, int target) { int ans = 0; for (int[] num : list[index]) { if (num[0] != target) { ans += num[1] + dfs(num[0], index); } } return ans; }}

avatar 龙儿之家 发表于 2023-12-07

2646. 最小化旅行的价格总和(2023-12-06)

力扣每日一题 题目:2646. 最小化旅行的价格总和 日期:2023-12-06 用时:30 m 14 s 时间:8ms 内存:42.98MB 思路:每条路上通过的城市数量实际就是图中每个节点的子节点数量,先统计旅行中每个节点路过的次数(dfs方法),再计算减半后的价格之和的最小值(dp方法),最后比较下减半和未减半的价格。dp方法中,对于相邻的父子节点有两种情况: 如果父节点价格不变,那么子节点的价格取减半和不变两种情况的最小值 如果父节点价格减半,那么子节点的价格只能不变 代码: class Solution { public int minimumTotalPrice(int n, int[][] edges, int[] price, int[][] trips) { list = new ArrayList[n]; for(int i=0;i<n;i++){ list[i] = new ArrayList<>(); } for(int[] edge:edges){ list[edge[0]].add(edge[1]); list[edge[1]].add(edge[0]); } cnt = new int[n]; for(int[] trip:trips){ end = trip[1]; dfs(trip[0],-1); } int[] res = dp(0,-1,price); return Math.min(res[0],res[1]); } List<Integer>[] list; int end; int[] cnt; boolean dfs(int ...

avatar 龙儿之家 发表于 2023-12-06

2477. 到达首都的最少油耗(2023-12-05)

力扣每日一题 题目:2477. 到达首都的最少油耗 日期:2023-12-05 用时:34 m 15 s 时间:37ms 内存:84.8MB 思路:分别计算每条路上通过的城市数量(数量/座位数,向上取整),然后求和,这里每条路上通过的城市数量实际就是图中每个节点的子节点数量。 代码:每条路上通过的城市数量实际就是图中每个节点的子节点数量。 class Solution { public long minimumFuelCost(int[][] roads, int seats) { int size = roads.length+1; List<Integer>[] list = new ArrayList[size]; for(int i=0;i<size;i++){ list[i] = new ArrayList<>(); } for(int[] road:roads){ int num1 = road[0]; int num2 = road[1]; list[num1].add(num2); list[num2].add(num1); }; dfs(0,-1,list,seats); return sum; } long sum = 0; private int dfs(int start,int end,List<Integer>[] list,int seats){ int cnt =1; for(int num: list[start]){ if(num!=end){ ...

avatar 龙儿之家 发表于 2023-12-05

一键安装JumpServerV3版本

一键安装 仅需两步快速安装 JumpServer: 准备一台 4核8G (最低)且可以访问互联网的 64 位 Linux 主机; 以 root 用户执行如下命令一键安装 JumpServer。 国内用户 curl -sSL https://resource.fit2cloud.com/jumpser

avatar 福福不服 发表于 2023-12-04

1038. 从二叉搜索树到更大和树(2023-12-04)

力扣每日一题题目:[1038. 从二叉搜索树到更大和树](https://leetcode.cn/problems/binary-search-tree-to-greater-sum-tree/description/)![2023-12-04.png](https://img.huangge1199.cn/halo/2023-12-04.png)日期:2023-12-04用时:12 m 23 s时间:0ms内存:39.39MB代码:```java/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val = val; * this.left = left; * this.right = right; * } * } */class Solution { public TreeNode bstToGst(TreeNode root) { dfs(root); return root; } int sum = 0; private void dfs(TreeNode node) { if (node == null) { return; } dfs(node.r...

avatar 龙儿之家 发表于 2023-12-04