laglangyue
laglangyue
全部文章
题解
java并发编程(5)
mysql(4)
数据结构(3)
未归档(9)
源码笔记(39)
归档
标签
去牛客网
登录
/
注册
laglangyue
忽有一题尚未解,垂死病中惊坐起。横批一题难顶!
全部文章
/ 题解
(共157篇)
牛客网2019真题-20善良的同伴(m段最大子序和)
折磨了好久,还是80%,这道题java动态规划过不了,算了。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; ...
2020-05-22
0
682
牛客网真题2019-19-魔法深渊
所有这类跳台阶问题,都可以考虑动态规划,考虑一步怎么到达F(n)=F(n-2^m)+F(n-2^(m-1))+...+F(n-2^0),n>=2^m;注意边界,F(0)=1。然后就是对10e9+3求模了。 import java.util.Scanner; public class Main...
2020-05-22
0
666
牛客网真题2019-18-搭积木
我太难了,折磨了三个小时 import java.lang.reflect.Array; import java.security.Key; import java.util.*; public class Main { public static int upBound(int[] d...
2020-05-22
1
702
牛客网真题2019-17-将满二叉树转换二叉树
满二叉树,中序遍历就能还原二叉树,这算是本题的bug。中序二叉满树到中序求和二叉树参考归并排序的写法。 import java.lang.reflect.Array; import java.util.Arrays; import java.util.Scanner; public class ...
2020-05-21
2
856
牛客网真题2019-16获得最多奖金
双指针,向中间收敛当[0,l]和[r,len-1]时,更新奖金数,每次循环l++,判断右区间大小,更新r指针双指针经典写法while(l<=r){l++;r--;},l,r分别初始化为-1和数组长度。本题如果用int类型,AC89.6%,一般这种首先把int全改成long尝试一下,然后再检查边...
2020-05-21
0
0
牛客网真题2019-14-塔
面向对象编程:堆java提供了优先级队列PriorityQueue,底层是堆实现的,建立每一个塔对象,用两个优先级队列包含所有塔,一个大根堆,一个小根堆。然后就简单了,从大小根堆取出对象,执行对象的add,remove方法,然后把操作日志记录到arraylist中去。该思路帮助回忆了一手堆和优先级队...
2020-05-19
0
703
牛客网真题2019-13-表达式求值
数学思路:乘法的定义为多个加法,当包含1的时候,乘法才小于加法。 import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner sc = new S...
2020-05-19
0
810
牛客网真题2019-12-整理房间
总体思路仍然是枚举所有情况,面向对象,可读性高,为了防止代码过长,没有进行属性封装。用一个对象数组存储四个角点,通过实现comparator接口实现排序,通过排序保证了数组 0和3的对象是对角角点,于是对角线就是0,3 和 1,2对角线中点重合,对角线长度相等且大于0,对角线互相垂直>>...
2020-05-18
0
683
牛客网真题2019-11-丰收
相比二分更优,二分法每个询问都要进行一次二分查找,通过对询问数组排序可以直接规避掉查找。思路:排序,前缀和+排序(复杂度都在排序上)对苹果堆数组进行前缀和计算(在输入时直接计算),对询问数组排序。为了保证输出,利用hashmap映射一下数组与结果。 package org.niuke.solut...
2020-05-18
0
648
牛客网真题2019-10-瞌睡
滑动窗口:因为只要最大得分,只要保存窗口内的得分即可。根据当前i与i+m的sleep状态,更新滑动窗口内的得分,一次遍历即可。 import java.util.Scanner; public class Main { public static void main(String[] ar...
2020-05-17
2
658
首页
上一页
7
8
9
10
11
12
13
14
15
16
下一页
末页