![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
洛谷
天人五衰《中》
仙人抚我顶。揭发。。。。
展开
-
洛谷P3842线段【JAVA实现】
题面分析只要弄懂每下一层时起点要不是上一层的左端点或者右端点。就是一个简单的DP设dp[i][0/1],表示走到第i层的线段并站在左/右端点上所需要走的最短长度。设L[i],R[i].表示第i层端点位置。边界情况:dp[1][0/1]可以直接求的。注意走完线段之后到左右端点。显而易见dp公式dp[i][0/1]=Math.min(dp[i-1][0]+Math.abs(L[i-1]-R/L[i])+R[i]-L[i],dp[i-1[1]+Math.abs(R[i-1]-R/L[i])+R原创 2020-05-29 23:04:11 · 169 阅读 · 0 评论 -
洛谷聪明的质监员【JAVA实现】
题面分析二分+前缀和优化求解二分可以看出来,W越大,被选上的矿石越少,则对应的Y值越小。即随着W的增大,Y值减小。 这就单调性我们可以在二分过程中求解与s相差最小的Y值,前缀和在计算Y值时需要操作区间和,通过前缀和可以优化时间复杂度。设L[i],R[i]为需要操作区间的左右端点。pren[i]为0到第i个被选中的矿石数量,prev[i]为到第i个为止被选中的 矿石的总价值。则Yj=(pren[R[j]]-pren[L[j]-1])*(prev[R[j]]-prev[L[j]-1])原创 2020-05-29 22:36:42 · 194 阅读 · 0 评论 -
洛谷摆花JAVA实现
题目:https://www.luogu.org/problemnew/show/P1077开始简单的暴力枚举结果得了10分吧(时间爆表)qwq。想必应该用动态规划才能破局了。动态总的说就是以前面的状态推后面的状态;后面的状态是以前面为基础的;(使劲水)手动滑稽.jpg我们设置状态f[i][j],表示在放置完第i种花的时候总共放了j盆花的方案数,我们可以看做按编号一种花一种花来种,...原创 2019-07-12 14:34:53 · 228 阅读 · 0 评论 -
洛谷兔八哥与猎人JAVA实现
此题的坑点是坑不到我的。--严肃地说在此就不画图解释了,相信大家(大大)们可以想到,两者直接有东西的话,科学的说就是两者横纵坐标之差的决对值不互质。简单的讲,有两种可能兔八哥不死,通常的是他们虽然在同一条x或y轴上但至少隔离一颗树。第二种就是如前前面所讲的两者坐标之差的比,如果存在有这种“比”还比他们数值小的话,兔八哥不死。就比如说4:8,就有2:4,比他们数值小。总结的说就是...原创 2019-07-10 19:57:14 · 162 阅读 · 0 评论 -
洛谷排行榜JAVA实现
此题我就简单的用了下Arraylist就过了。我想是数据小吧。( ̄_, ̄ )开心的偷懒每一个down的歌单意味着往上升,“保险”地看法是升的过程中顺序不变,以免无法全部满足,大家至少都可以往上挤一挤;而down的同上嘛,根据题意可知不变的就让他不变在前面的基础上插(挤)进去就好。用三个数组存up ,down,same。down和 up先后放入链表中,然后same的数组往里面一插,...原创 2019-07-10 19:12:19 · 1131 阅读 · 0 评论 -
洛谷【模板】网络最大流JAVA实现
运用EK算法轻松解决模板问题(只会模板qwq)!前提会的算法:广度优先搜索 ,数据结构我用的是链式前向星存边;推荐播客:(前向星)https://blog.csdn.net/ZHangFFYY/article/details/77871897(网络流)http://www.sohu.com/a/243746046_100201031(Dininc算法)https://www.cnb...原创 2019-07-12 19:40:03 · 348 阅读 · 0 评论 -
洛谷食物链JAVA实现
本题我所用方法为补集法; 这是一个巧妙的方法,相当于几个并查集合并;取经于https://blog.csdn.net/qq_35786326/article/details/79234930适用于解决此类问题,请放心食用;import java.util.Scanner;public class Main { static int x[],sum=0;publi...原创 2019-04-16 22:54:21 · 321 阅读 · 0 评论 -
洛谷倒水JAVA实现
数据开的有点大,开始没注意,错的时候以为只是要大一点,还是用int类型数组,结果qwq。这时才醒悟用的long类型来存大数据;本题两两合并成一个,可以看出是个与二进制有关的题;开始建立long类型数组从而表示出当前瓶子表示的二进制数;为取最小瓶子数,即从最小位开始遍历抵消多余的瓶子的总数;即假设没有那些多余的瓶子下进1位的所需瓶子数-那些多余的瓶子数;import...原创 2019-04-08 20:46:18 · 184 阅读 · 0 评论 -
洛谷疯狂的采药JAVA实现
完全背包问题import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); while(sc.hasNext()){ int m=sc.nextInt(); int n=sc.nextInt();...原创 2018-12-20 21:19:11 · 313 阅读 · 0 评论 -
洛谷小A点菜JAVA实现
一维数组版import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int n = sc.nextInt(); int m = sc.ne...原创 2018-12-20 21:17:01 · 177 阅读 · 0 评论 -
洛谷潜伏者JAVA实现
勉强过的代码希望路过的大神或同志提提建议import java.util.Arrays;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); char x[] = new char[91...原创 2018-11-30 22:18:31 · 238 阅读 · 0 评论 -
洛谷宇宙总统JAVA实现
本人第一次写希望多提建议 import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String x[] = new String[n +...原创 2018-11-30 19:30:41 · 245 阅读 · 4 评论 -
洛谷均分纸牌JAVA实现
简单的贪心一路往后推即可;多了往后递少了往后借;import java.util.Scanner;public class p1031 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int n = sc.nextI...原创 2018-12-02 20:26:31 · 157 阅读 · 0 评论