自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 搜索旋转排序数组 二分数组 + 二分搜索

题目链接题意给你一个有序数组,但可能会旋转变化( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。让你使用O(logn)O(logn)O(logn) 的复杂度确定一个数的下标。思路既然是O(logn)O(logn)O(logn)级别的,那么只能选择二分搜索法。本题的难点是 局部有序 。解决方案就是每一次都要判断当前的中位数是位于左半部分 还...

2020-02-28 22:41:10 153

原创 x的平方根 二分查找

题目链接题意给你一个数,让你求出n的平方根,这个平方根的平方一定是n以内最接近n的数。思路直接用java函数库里的方法sqrt方法很快就能做。下面考虑一下二分。首先我们限定一下l 和 r 的范围,一定是在[0, n / 2 + 1]内的。最后的结果一定是(ans, ans + 1)中的ans如果是判断条件等于的话,那么结果一定是r,因为此时r 在 l的左端。import jav...

2020-02-28 20:48:10 135

原创 D - MEX maximizing CodeForces - 1294D思维构造

题目地址题意给你一个空数组,你可以q次操作查询,每一次操作将一个数放入数组中。并输出数组中没有的最小数。同时有一个x,数组中的任意元素都可以对 + - x 进行任意次操作。思路:因为是对x任意次数操作,所以可以想到要是否存在一个数target 这个数 可以通过 数组中的一个数进行对x的几次操作而得来。那么 target % x 这个数 在数组中一定是存在的。 所以我们可以储存每次插入数对...

2020-02-27 14:53:03 190

原创 River Hopscotch 二分搜索答案 + 最小值最大化

题目链接题意:给你n个数,代表到原地的距离,让你求能否拿掉最多M个石头,使得各石头之间的最小距离最大。思路:我们枚举最小距离,我们统计比 最小距离 还小 两个数之间 的距离,如果是m个以内,那么我们就继续二分这个数,扩大这个数的值,如果超过m个,那么我们就缩小。Ac代码import java.math.BigInteger;import java.util.Arrays;impor...

2020-02-26 16:43:35 221

原创 切割钢管 二分搜索答案

题目地址题意:给你n个钢管,要切成至少k个相同的数,现在让你求如何切割最大。思路:分析可知,比当前值还小的都不要,比当前值大的也不要。答案区间符合二分的性质。二分搜索答案。在[l ,r]内搜索。当循环结束时,答案即为r或l.二分理解:如果都是闭区间就加等于号,然后你想清楚你要找的是符合条件的最后一个,还是不符合条件的第一个,这儿决定着你 l 和 r 怎么变如果觉得犹豫,一个好的方...

2020-02-26 15:35:37 352

原创 蓝桥杯 四平方和

传送门题意:给你一个数n,让你找到是否存在a,b,c,d。满足a2+b2+c2+d2=na^2 +b^2+c^2+d^2 =na2+b2+c2+d2=nn <= 5e6;思路:我们只需找出a,b,c即可,剩余的用intl=(int)Math.sqrt(n−x∗x−y∗y−z∗z);int l = (int)Math.sqrt(n - x * x - y * y - z * z)...

2020-02-25 10:48:55 207

原创 蓝桥杯多项式相乘

题目链接思路:直接按多项式相乘的方法进行模拟。优化后代码import java.math.BigInteger;import java.util.Arrays;import java.util.Comparator;import java.util.Scanner;public class Main { public static void main(String[] ar...

2020-02-24 20:15:00 219

原创 Skyscrapers (easy version) CodeForces - 1313C1暴力思維

题目链接题意:给你n个大厦在一条线上,这n个大厦的高度要满足不能有谷。你可以减小大厦的高度使得这n个大厦满足这个条件。问,如何减小才能使得大厦总体的高度最高。思路:因为n的范围不大,所以我们对每个大厦进行判断,将每个大厦当成峰来判断,最后维护一个最大的峰即可。AC代码:import java.math.BigInteger;import java.util.Scanner;p...

2020-02-24 18:02:59 288

原创 Java计算两个日期之间相差的天数 SimpleDateFormat format Java | 模拟 | 直接计算日期差

题目链接思路:就是这么短,这么好用!getTime()方法返回的是毫秒数。所以最后输出的时候再/ (1000 * 3600 * 24)转化为天数。import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;class Solution { public int...

2020-02-23 16:50:23 1364

原创 补题: A - Heron and His Triangle 计蒜客 - A1400 Java大数 + 递推公式

题意:给你一个数n,让你找出一个t满足 t - 1,t ,t + 1组成的三角形的面积是整数的情况。这个t一定是大于n的且必须是大于n的数中最小的。思路:1.打表找规律,还要知道海伦公式。2.利用数据从OEIS上找规律|| 线性找递推式。3.Java大数。import java.math.BigInteger;import java.util.Scanner;public cla...

2020-02-23 16:12:22 189

原创 Anu Has a Function CodeForces - 1300 位运算 + 思维 + 判断进制数

题目地址思路:根据题目给出的条件,f(f(…f(f(a1,a2),a3),…an−1),an)f(f(\dots f(f(a_1, a_2), a_3), \dots a_{n-1}), a_n)f(f(…f(f(a1​,a2​),a3​),…an−1​),an​)ep:f(11,6)=(11∣6)−6=15−6=9ep:f(11, 6) = (11|6) - 6 = 15 - 6 = 9...

2020-02-23 14:27:58 157

原创 左移运算符规则 右移运算符规则

这几天昨天发现对位运算还不是很熟悉,记下来以后也可以复习复习。总结:左边数字的移动n位 num << n 相当于乘以2的n次方 num >> n相当于除以2的n次方。...

2020-02-23 12:26:26 2108

原创 蓝桥思维 完美车牌

思路:这个题警示我,不要搞得那么复杂。 0 1 8 69 96 最外层 0 1 8 69 96 次外层 0 1 8 69 96 内两层

2020-02-22 18:15:07 238 9

原创 Java精确小数位

System.out.println(String.format("%.6f",a));

2020-02-22 10:04:17 195

原创 网页跳转 栈的使用

传送门题意:有三个操作,VISIT是打开新的页面,Back向后退, forward向前进。就是模仿我们平时的页面打卡操作。思路;看了题用的是两个stack感觉很巧妙。一个stack用来储存当前的网址,如果Back就将当前的栈首弹出,再存入另一个栈,另一个栈的作用就是储存已经后退过的栈。AC代码package jisuanke;import java.util.Scanner;...

2020-02-21 18:28:08 380

原创 Odd sum CodeForces - 797B 思维贪心

传送门题意:给你n个数 求一个子序列的和是奇数且最大的情况。思路;单独统计偶数,再去找奇数,这里有个 坑点 是当出现奇数为负数时,如果此时sum为偶数,要去判断是要当前的奇数还是舍去上一个奇数。import java.util.Arrays;import java.util.Comparator;import java.util.Scanner;public class Mai...

2020-02-20 17:47:26 162

原创 经典栈类题目 括号匹配 Java stack

在Java中栈直接继承Stack 使用Stack容器,不向queue是用LinkedList实现的。s.push()压入 pop()弹出值并删除思路:寻找能配成(),太经典了,就像凑成aa 这样消除得到一样 应该先先到使用栈。传送门import java.util.Scanner;import java.util.Stack;public class Main { public ...

2020-02-19 20:49:37 180

原创 报数 约瑟夫环报数问题

题意:n个小朋友报数,从1开始,每报m个 这个小朋友就出局,下一个小朋友再从1开始报,最后剩余的小朋友的坐标是多少。思路:利用队列来做。预处理起始位置,每次数到m的小朋友出局,反之放到队列底。import java.awt.List;import java.util.LinkedList;import java.util.Queue;import java.util.Scanner;...

2020-02-19 17:31:48 269

原创 字符串弱等于(选做)Java递归

传送门思路:按条件递归即可,注意多种情况。import java.util.Scanner;public class Main { public static boolean solve(String a, String b) { if(a.compareTo(b) == 0) { return true; }else if(a.length() == b.lengt...

2020-02-19 15:32:25 303

原创 成绩排序 利用 类 模拟 结构体排序 ArrayList

思路:直接按题意模拟,但要重写一下Comparator.注意字符串的排序用comparaTo();其余没什么好说的。利用类模拟结构体。get√import java.awt.List;import java.util.*;import java.util.Scanner;class node{ String s; int a,b,c,d,sum; node(Strin...

2020-02-16 23:41:14 169

原创 数据结构data structure作业 回顾 c语言 数据类型 位运算 指针 结构体 typedef

基本数据类型sizeofchar占据的内存大小是1 个byte; short 占据的内存大小是2 个byte;int占据的内存大小是4 个byte;long占据的内存大小是4 个byte;float占据的内存大小是4 个byte;ps:精度在6~7double占据的内存大小是8 个byte。ps:精度在15 ~ 16.位运算and &or |xor ^非 ~...

2020-02-16 17:34:38 195

原创 leetdcode 5342. 最多可以参加的会议数目 贪心排序Java

传送门Arrays.sort();构造内部类完成overide.题意:给你几组区间,每个区间当天可以参加一次会议,问你最多能参加几次会议。思路:贪心思想:对结束日期排序,再对开始日期排序。都按照o1 - o2排序。数组标记已经参与过的日期。知识点:Arrays.sort的重载以及二维数组的for each输出。可以理解成 行数 个 列。class Solution { p...

2020-02-16 13:32:14 434

原创 The Chosen OneJava 大数运算

传送门题意:n个数内,每次移动奇数位置的数,问最后剩余的数是哪一个?思路:观察得到,最后剩余的数一定是2的k次方下正好小于等于n的数。题目中给的是大数,用java做即可。BigInteger.valueOf(1)常用:BigInteger.valueOf(2)BigInteger n;n.multiply();temp.compareTo();import java.mat...

2020-02-15 21:39:41 157

原创 一维消消乐 思维dp

传送门思路:分别用dp[i][0]表示当前态不相乘时最大的和dp[i][1] 表示当前态相乘最大的和针对每种状态 讨论状态转移方程,最后比较大小。import java.util.*;public class Main{ public static void main(String[] args) { Scanner cin = new Scanner(System.in...

2020-02-15 12:03:53 276

原创 逃生 二维dp

传送门思路:状态转移方程很好得出dp[][] = Math.max () + map[][];细节要注意1.当 当前状态 大于c时要赋予c值2.当 当前状态 小于等于0时 赋予一个无限小的值。3.!!注意考虑边界情况!当i = x, j = y这种情况! 因为有可能使某一个状态从已死变成0!!import java.util.*;public class Main{ pu...

2020-02-15 11:47:13 220

原创 蒜头君的新游戏 二维dp

传送门二维dp(i, j)思路:表示在第i轮到第j个有几种传递方式。因为是一个圈所以要特判一下当位于第1个人 和 第n个人的情况import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); ...

2020-02-13 22:30:19 82

原创 密码锁 bfs 字符转字符串 用 String.valuesOf()!!!!!!!!!!!!!!

传送门具体的没什么好说的。各种情况建边就好了。String.ValueOf()!!!String.ValueOf()!!!String.ValueOf()!!!import java.util.HashMap;import java.util.LinkedList;import java.util.Map;import java.util.Queue;import java.u...

2020-02-11 22:18:37 119

原创 蒜头君回家 双向BFS Java

思路;因为钥匙的个数可能有多个,所以第一次bfs找出从起点到每个p的最短距离。然后再找出终点到每个p的最短距离,最后枚举最小。这里注意:1.数组赋值不能一起赋!2.Arrays.fill只能用于一维数组3.集合中存坐标可以用数组来完成‘Queue<int[]>que = new LinkedList<int[]>();记住每次数组要临时建 每次都要分配空间。传...

2020-02-11 20:47:55 390

原创 Java Bfs 哆啦A梦的时光机

Java中的queue用LinkedList实现que.poll() 删除 que.peek();返回队首 que.clear()清空队列 que.offer()插入队列建立四条边即可传送门package jisuanke;import java.util.*;public class BfsTimeMachine { public static void main(String[]...

2020-02-11 15:51:18 256

原创 1345. 跳跃游戏 IV bfs

思路:bfs的思想就是一颗树上,最先到达目标结点。给出移动的三个条件,问最小操作次数到达目标结点。三个条件建三条边即可。注意特判相同转移情况。dist[i] 原点到i点的距离 flag[i] 用于标记是否可以转移。Ac代码:const int Maxn = 5e4 + 5;int dist[Maxn], flag[Maxn];map<int, vector<int>&...

2020-02-10 12:43:33 213

原创 C++中的auto 和 java中的 for each语句

本质上都是一样的?for each语句中直接说明了 for (类型 T : 集合)auto 是自动获取集合类型 纳斯 忘了迭代器就用auto了

2020-02-09 20:25:00 507

原创 Fight with Monsters 贪心 排序

认真读题!认真想题!用一个数组存每个数消耗的k的数 然后排序 贪心即可。传送门#include<iostream>#include<cstring>#include<algorithm>#include<cstdio>#include<cstdlib>#include<queue>#include<cm...

2020-02-08 22:00:11 191

原创 二分法学习 +模板 + 例题

https://vjudge.net/problem/CodeForces-1295Chttps://vjudge.net/contest/353324

2020-02-04 13:44:50 213

原创 CodeForces - 1270C Make Goodxor构造

传送门这个题 是典型的构造题x ^ x = 0;0 ^ x = x;根据题意构造成 sum + sum1 + (sum1 + sum) 与 sum1 ^ sum1 ^ (sum + sum1) 发现两式恒等#include<iostream>#include<algorithm>#include<cstdio>using namespac...

2020-02-01 21:25:04 204

Java实现邻接表.html

第一次制作的网页,关于基于Java实现图论算法的代码。内含一些html的基础操作语法,比如超链接等等。

2020-03-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除