搜索
djfkdjfodjfkd
这个作者很懒,什么都没留下…
展开
-
剑指 Offer II 112. 最长递增路径
思路记录:记忆化搜索,每次把结果记录下来,如果后面再碰到,直接返回结果 class Solution { int[] dx= {-1,0,1,0}; int[] dy= {0,1,0,-1}; int[][] mk; int[][] matrix; int ans=1; int n,m; public int longestIncreasingPath(int[][] matrix) { this.matrix=matrix;...原创 2022-05-09 16:50:27 · 60 阅读 · 0 评论 -
124. 二叉树中的最大路径和
思路记录:贪心算法,从叶子节点开始每次往上一层提供最大的节点值,在每个节点更新答案,因为可能是负值,所以要判断是否大于零才能加 class Solution { int ans=Integer.MIN_VALUE; public int maxPathSum(TreeNode root) { dfs(root); return ans; } int dfs(TreeNode T){ if(T==null) retu...原创 2022-05-01 21:42:05 · 482 阅读 · 0 评论 -
P3884 [JLOI2009]二叉树问题
如下图所示的一棵二叉树的深度、宽度及结点间距离分别为: 深度:4 宽度:4(同一层最多结点个数) 结点间距离: ⑧→⑥为8 (3×2+2=8) ⑥→⑦为3 (1×2+1=3) 注:结点间距离的定义:由结点向根方向(上行方向)时的边数×2, 与由根向叶结点方向(下行方向)时的边数之和。 输入格式 输入文件第一行为一个整数n(1≤n≤100),表示二叉树结点个数。接下来的n-1行,表示从结点x到结点y(约定根结点为1),最后一行两个整数u、v,表示求从结点u到结点v的距离。 输出格式 三个原创 2022-04-21 13:46:54 · 187 阅读 · 0 评论 -
P1434 [SHOI2002]滑雪
题目描述 Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子: 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 一个人可以从某个点滑向上下左右相邻四个点原创 2022-04-09 13:51:04 · 89 阅读 · 0 评论 -
P2392 kkksc03考前临时抱佛脚
题目背景 kkksc03 的大学生活非常的颓废,平时根本不学习。但是,临近期末考试,他必须要开始抱佛脚,以求不挂科。 题目描述 这次期末考试,kkksc03 需要考44科。因此要开始刷习题集,每科都有一个习题集,分别有s_1,s_2,s_3,s_4s1,s2,s3,s4道题目,完成每道题目需要一些时间,可能不等(A_1,A_2,\ldots,A_{s_1}A1,A2,…,As1,B_1,B_2,\ldots,B_{s_2}B1,B2,…,Bs2,C_1,C_2,\ldo...原创 2022-04-08 22:22:45 · 113 阅读 · 0 评论 -
BM57 岛屿数量
描述 给一个01矩阵,1代表是陆地,0代表海洋,如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。 岛屿: 相邻陆地可以组成一个岛屿(相邻:上下左右) 判断岛屿个数。 例如: 输入 [ [1,1,0,0,0], [0,1,0,1,1], [0,0,0,1,1], [0,0,0,0,0], [0,0,1,1,1] ] 对应的输出为3 (注:存储的01数据其实是字符'0','1') import java.util.*; public class Solutio.原创 2022-04-07 22:45:53 · 244 阅读 · 0 评论 -
P1443 马的遍历
#include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> #include <iostream> #include <bits/stdc++.h> using namespace std; int n,m,qx[100000],f=0,r=0; int qy[100000]; int a[500][500]; int...原创 2022-04-05 13:31:46 · 53 阅读 · 0 评论 -
P1036 [NOIP2002 普及组] 选数
题目描述 已知 nn 个整数 x_1,x_2,\cdots,x_nx1,x2,⋯,xn,以及 11 个整数 kk(k<nk<n)。从 nn 个整数中任选 kk 个整数相加,可分别得到一系列的和。例如当 n=4n=4,k=3k=3,44 个整数分别为 3,7,12,193,7,12,19 时,可得全部的组合与它们的和为: 3+7+12=223+7+12=22 3+7+19=293+7+19=29 7+12+19=387+12+19=38 3+12+19=343+12+19=34原创 2022-04-04 23:17:02 · 135 阅读 · 0 评论 -
[USACO1.5]八皇后 Checker Challenge
洛谷1219 题目描述 一个如下的 6 \times 66×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。 上面的布局可以用序列 2\ 4\ 6\ 1\ 3\ 52 4 6 1 3 5 来描述,第 ii 个数字表示在第 ii 行的相应位置有一个棋子,如下: 行号 1\ 2\ 3\ 4\ 5\ 61 2 3 4 5 6 列号 2\ 4\ 6\ 1\ 3\ 52 4 6 1 3 5 这只是棋子放置的一个解。请编一原创 2022-04-04 22:38:26 · 77 阅读 · 0 评论 -
19104 机器人的运动范围
19104 机器人的运动范围 时间限制:1000MS 代码长度限制:10KB 提交次数:0 通过次数:0 题型: 编程题 语言: 不限定 Description 来源:牛客NC280 地上有一个 rows 行和 cols 列的方格。坐标从 [0,0] 到 [rows-1,cols-1] 。 一个机器人从坐标 [0,0] 的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于 threshold 的格子。 例如,当 threshold 为 18.原创 2022-04-03 20:01:42 · 234 阅读 · 0 评论 -
19120 病毒扩散
Description SDUT 4783 2019-ncov的突然出现扰乱了人们的日常生活,它具有极强的传染性,可以快速的在人群中扩散,现在研究人员正在模拟其在人群中的扩散情况. 在一个n*m矩阵所示的人群中,*为普通人,#为佩戴口罩的人,@为病毒携带者, 已知每秒每位病毒携带者会将病毒传染给相邻八个方向的未戴口罩的普通人。 请问 x 秒后会有多少名传染者(初始为第0秒)? 输入格式 第一行输入空格分隔的三个数n,m,x代表n行,m列的空间,x秒(n,m<=1000)。 接下来n原创 2022-04-03 19:13:14 · 1023 阅读 · 0 评论 -
19072 数字字符串转化成IP地址
Description 百度面试题 现在有一个只包含数字的字符串,将该字符串转化成IP地址的形式,返回所有可能的情况。 例如: 给出的字符串为"25525522135", 返回["255.255.22.135", "255.255.221.35"]. 要求:空间复杂度 O(n),时间复杂度 O(n!)。 注意:ip地址是由四段数字组成的数字序列,格式如 "x.x.x.x",其中 x 的范围应当是 [0,255]。 有情提示:类似这样的数字00010,只能划分为0.0.0.10,不能划分为00.0.原创 2022-04-02 22:29:52 · 339 阅读 · 0 评论 -
整数分解(dfs)
题目描述 任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。现在给你一个自然数n,要求你求出n的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。 输入格式 输入:待拆分的自然数n。 输出格式 输出:若干数的加法式子。 简单的搜索题目,直接dfs即可 #include <stdio.h> #include <string.h> #include <math.h> #inc原创 2022-03-30 23:15:01 · 169 阅读 · 0 评论