算法
菜鸟zzz1999
A green hand.
展开
-
筛质数 埃氏筛法
// 筛法找质数 static int[] st = new int[N + 1]; public static void getPrimes() { for (int i = 2; i <= N; i++) { if (st[i] == 0) { // 0是质数 1是和数 for (int j = i + i; j <= N; j += i) { st[j] = 1.原创 2021-06-03 16:53:31 · 132 阅读 · 0 评论 -
质因数分解小心得 2020年第十一届蓝桥杯javab组第三题阶乘约数
质因数分解是指将一个数分解成全由质数的X次方相乘的式子设被质因子分解的数为:100思路:for i = 1 to 100,如果i是合数(质数的反义词也可以说是非质数) 将被分解的数除以i并将i处的次方数+1 public static void simple(int n) { int[] st = new int[n + 1]; for (int i = 2; i * i <= n; i++) { if (n % i == 0) {原创 2021-06-02 16:40:18 · 524 阅读 · 0 评论 -
第十二届蓝桥杯第一场G.砝码称重
你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN。请你计算一共可以称出多少种不同的正整数重量?注意砝码可以放在天平两边。输入格式输入的第一行包含一个整数 N。第二行包含 N 个整数:W1,W2,W3,⋅⋅⋅,WN。输出格式输出一个整数代表答案。数据范围对于 50% 的评测用例,1≤N≤15。对于所有评测用例,1≤N≤100,N 个砝码总重不超过 105。输入样例:31 4 6输出样例:10样例解释能称出的 10 种重量是:1、2、3、4、5、6原创 2021-05-30 17:32:16 · 466 阅读 · 2 评论 -
01背包 递归 dp
import java.util.Arrays;import java.util.Scanner;public class _01Inventory { static int n; static int w; static int[] weight; static int[] value; public static void main(String[] args) { Scanner scanner = new Scanner(System.原创 2021-05-23 00:08:50 · 109 阅读 · 0 评论 -
第六届蓝桥杯国赛JAVA语言B组第四题 穿越雷区 bfs 位运算
标题:穿越雷区X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废。某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征),怎样走才能路径最短?已知的地图是一个方阵,上面用字母标出了A,B区,其它区都标了正号或负号分别表示正负能量辐射区。例如:A + - + -- + - - +- + + + -+ - + - +B + - + -坦克车只能水平或垂直方向上移动到相邻的区。数据格式要求:输入第一行是一个整数n,表示方阵的大小,原创 2021-05-15 20:26:32 · 220 阅读 · 0 评论 -
Leetcode120. 三角形最小路径和 动态规划(dp)解法
给定一个三角形 triangle ,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i 或 i + 1 。示例 1:输入:triangle = [[2],[3,4],[6,5,7],[4,1,8,3]]输出:11解释:如下面简图所示:23 46 5 74 1 8 3自顶向下的最小路径和为 11(即原创 2021-05-07 22:25:15 · 2212 阅读 · 0 评论 -
Leetcode70.爬楼梯三种方法时间消耗比较
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶主类//https://leetcode-cn.com/problems原创 2021-04-15 19:49:32 · 166 阅读 · 0 评论 -
2014蓝桥杯java地宫寻宝记忆递归
标题:地宫取宝X 国王有一个地宫宝库。是 n x m 个格子的矩阵。每个格子放一件宝贝。每个宝贝贴着价值标签。地宫的入口在左上角,出口在右下角。小明被带到地宫的入口,国王要求他只能向右或向下行走。走过某个格子时,如果那个格子中的宝贝价值比小明手中任意宝贝价值都大,小明就可以拿起它(当然,也可以不拿)。当小明走到出口时,如果他手中的宝贝恰好是k件,则这些宝贝就可以送给小明。请你帮小明算一算,在给定的局面下,他有多少种不同的行动方案能获得这k件宝贝。【数据格式】输入一行3个整数,用空格分开:原创 2021-04-15 19:39:43 · 160 阅读 · 0 评论