自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 收藏
  • 关注

原创 NOIP2003提高组---加分二叉树

题目:设一个nn个节点的二叉树 tree 的中序遍历为(1,2,3,…,n1,2,3,…,n),其中数字1,2,3,…,n1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第ii个节点的分数为didi,tree 及它的每个子树都有一个加分,任一棵子树 subtree(也包含 tree 本身)的加分计算方法如下:     subtree的左子树的加分××subtree的右子树的加分++subtree的根的分数 若某个子树为空,规定其加分为11。...

2022-05-31 16:19:44 252

原创 凸多边形的划分

题目:给定一个具有 NN 个顶点的凸多边形,将顶点从 11 至 NN 标号,每个顶点的权值都是一个正整数。将这个凸多边形划分成 N−2N−2 个互不相交的三角形,对于每个三角形,其三个顶点的权值相乘都可得到一个权值乘积,试求所有三角形的顶点权值乘积之和至少为多少。输入格式第一行包含整数 NN,表示顶点数量。第二行包含 NN 个整数,依次为顶点 11 至顶点 NN 的权值。输出格式输出仅一行,为所有三角形的顶点权值乘积之和的最小值。数据范围N≤50N≤50,数据保证所有顶

2022-05-31 15:18:56 915

原创 LeetCode---1143. 最长公共子序列

给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace"是"abcde"的子序列,但"aec"不是"abcde"的子序列。两个字符串的公共子序列是这两个字符串所共同拥有的子序列。示例 1:输入:text1 = "abcde", text...

2022-03-30 13:07:58 595

原创 算法导论---钢条切割

题目:Serling公司购买长钢条,将其切割为短钢条出售。切割工序本身没有成本支出。公司管理层希望知道最佳的切割方案。​ 假定我们知道Serling公司出售一段长度为i英寸的钢条的价格为p;(i=1,2,…,单位为美元)。钢条的长度均为整英寸。表1给出了一个价格表的样例。​ 钢条切割问题是这样的:给定一段长度为n英寸的钢条和一个价格表p;(i=1,2,…,n),求切割钢条方案,使得销售收益r。最大。注意,如果长度为n英寸的钢条的价格pn足够大,最优解可能就是完全不需要切割。方法一:dfs深

2022-03-29 23:00:33 1041

原创 洛谷---P1216 [USACO1.5][IOI1994]数字三角形 Number Triangles

题目描述观察下面的数字金字塔。写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从 7→3→8→7→5 的路径产生了最大输入格式第一个行一个正整数 rr ,表示行的数目。后面每行为这个数字金字塔特定行包含的整数。输出格式单独的一行,包含那个

2022-03-29 21:41:01 187

原创 LeetCode---416. 分割等和子集

给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。示例 1:输入:nums = [1,5,11,5]输出:true解释:数组可以分割成 [1, 5, 5] 和 [11] 。示例 2:输入:nums = [1,2,3,5]输出:false解释:数组不能分割成两个元素和相等的子集。提示:1 <= nums.length <= 200 1 <= nums[i] <= 1..

2022-03-29 15:21:09 574

原创 洛谷---P2240 【深基12.例1】部分背包问题

题目描述阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有N(N≤100) 堆金币,第 i 堆金币的总重量和总价值分别是mi​,vi​(1≤mi​,vi​≤100)。阿里巴巴有一个承重量为 T(T≤1000) 的背包,但并不一定有办法将全部的金币都装进去。他想装走尽可能多价值的金币。所有金币都可以随意分割,分割完的金币重量价值比(也就是单位价格)不变。请问阿里巴巴最多可以拿走多少价值的金币?输入格式第一行两个整数N,T。接下来 N 行,每行两个整数 mi​,vi​。输出格式一个实数表示答案

2022-03-29 13:45:14 376

原创 Best Cow Line POJ - 3617

FJ is about to take hisN(1 ≤N≤ 2,000) cows to the annual"Farmer of the Year" competition. In this contest every farmer arranges his cows in a line and herds them past the judges.The contest organizers adopted a new registration scheme this year: simp...

2022-03-29 13:07:41 122

原创 Cleaning Shifts POJ - 2376

Farmer John is assigning some of his N (1 <= N <= 25,000) cows to do some cleaning chores around the barn. He always wants to have one cow working on cleaning things up and has divided the day into T shifts (1 <= T <= 1,000,000), the first bein

2022-03-29 13:03:44 164

原创 洛谷---P1803 凌乱的yyy / 线段覆盖

题目背景快 noip 了,yyy 很紧张!题目描述现在各大 oj 上有 n 个比赛,每个比赛的开始、结束的时间点是知道的。yyy 认为,参加越多的比赛,noip 就能考的越好(假的)。所以,他想知道他最多能参加几个比赛。由于 yyy 是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加 2 个及以上的比赛。输入格式第一行是一个整数 n ,接下来 n 行每行是 2个整数 ai​,bi​ ( ai​<bi​ ),表示比赛开始、结束的时间。输出格式一个整数最多参加

2022-03-28 20:27:51 263

原创 POJ-1700 Crossing River

A group of N people wishes to go across a river with only one boat, which can at most carry two persons. Therefore some sort of shuttle arrangement must be arranged in order to row the boat back and forth so that all people may cross. Each person has a dif

2022-03-28 20:09:09 434

原创 贪心---硬币问题

题目:有1元,5元,10元,50元,100元,500元的硬币各c1,c5,c10,c50,c100,c500枚。现在要用这些硬币来支付A元,最少需要多少枚硬币?假定本题至少存在一种支付方案。0≤ci≤10^90≤A≤10^9输入:第一行有六个数字,分别代表从小到大6种面值的硬币的个数第二行为A,代表需支付的A元样例:输入3 2 1 3 0 2620输出:6每次都选面值最大的import java.util.Scanner;public cl

2022-03-28 17:31:44 339

原创 洛谷---P1219 [USACO1.5]八皇后 Checker Challenge

题目描述一个如下的 6×6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 246135来描述,第i 个数字表示在第i 行的相应位置有一个棋子,如下:行号1 2 3 4 5 6列号 246135这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。并把它们以上面的序列方法输出,解按字典顺序排列。请输出前33个解。最后一行是解的总个数。输入格式...

2022-03-26 11:45:43 120

原创 洛谷---P1596 [USACO10OCT]Lake Counting S

题目描述Due to recent rains, water has pooled in various places in Farmer John's field, which is represented by a rectangle of N x M (1 <= N <= 100; 1 <= M <= 100) squares. Each square contains either water ('W') or dry land ('.'). Farmer John wo

2022-03-25 23:57:05 81

原创 挑战程序设计竞赛---部分和

题目:给定整数序列a1,a2,....,an,判断是否可以从中选出若干数,使它们的和恰好为k。1≤n≤20-10^8≤ai≤10^8-10^8≤k≤10^8样例:输入n = 4a = {1,2,4,7}k =13输出:Yes(13 = 2 + 4 + 7)方法一:利用求子集方式判断那个子集中累加等于kimport java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main {

2022-03-25 21:18:04 231

原创 LeetCode---37. 解数独

37. 解数独难度困难1185收藏分享切换为英文接收动态反馈编写一个程序,通过填充空格来解决数独问题。数独的解法需遵循如下规则:数字1-9在每一行只能出现一次。 数字1-9在每一列只能出现一次。 数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用'.'表示。示例 1:输入:board = [["5","3",".",".","7",".",".",".","."],["6",".","."...

2022-03-25 19:34:35 564

原创 LeetCode --- 47. 全排列 II

给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。示例 1:输入:nums = [1,1,2]输出:[[1,1,2], [1,2,1], [2,1,1]]示例 2:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]提示:1 <= nums.length <= 8 -10 <= nums[i] <= 10import jav

2022-03-25 16:22:17 452

原创 A/B HDU-1576

A/BHDU - 1576要求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973)(我们给定的A必能被B整除,且gcd(B,9973) = 1)。Input数据的第一行是一个T,表示有T组数据。每组数据有两个数n(0 <= n < 9973)和B(1 <= B <= 10^9)。Output对应每组数据输出(A/B)%9973。Sample Input21000 5387 123456789Sample Output..

2022-03-25 16:00:17 64

原创 全排列---多方法

插入import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); SolutionTest solution = new SolutionTest(); List<String...

2022-03-25 15:47:40 309

原创 子集生成之二进制法

例如要生成{1,2,3}的全部子集[[3, 2, 1], [3, 2], [3, 1], [3], [2, 1], [2], [1]]import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Soluti

2022-03-25 13:04:28 147

原创 硬币表示问题

题目有下列:ProjectEuler:假设我们有8种不同面值的硬币{1, 2, 5, 10, 20, 50, 100, 200} ,用这些硬币组合构成一个给定的数值n。例如n=200,那么一种可能的组合方式为200 = 3 * 1 + 1 * 2+ 1 * 5 + 2 * 20 + 1 * 50 + 1 * 100。问总共有多少种可能的组合方式?华为面试题:1分2分5分的硬币三种,组合成1角, 共有多少种组合创新工厂笔试题:有1分,2分,5分, 10分四种硬币,每种硬币数量无限,给定n

2022-03-24 23:08:25 271

原创 LeetCode:最小路径之和

题目:给定一个包含非负整数的 mxn网格grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:一个机器人每次只能向下或者向右移动一步。示例 1:输入:grid = [[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径 1→3→1→1→1 的总和最小。示例 2:输入:grid = [[1,2,3],[4,5,6]]输出:12来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl...

2022-03-24 18:48:26 312

原创 质数的筛法

题目:找到第n个素数import java.util.*;import static java.lang.Math.log;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int

2022-03-24 16:02:36 94

原创 质因数分解

质因数就是一个数的约数,并且是质数。比如8=2×2×2,2就是8的质因数;12=2×2×3,2和3就是12的质因数。把一个式子以12=2×2×3的形式表示,叫做分解质因数。import java.sql.SQLSyntaxErrorException;import java.util.*;import static java.lang.Math.abs;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { pu..

2022-03-24 14:46:57 206

原创 蓝桥杯---一步之遥

题目:从昏迷中醒来,小明发现自己被关在 X 星球的废矿车里。 矿车停在平直的废弃的轨道上。 他的面前是两个按钮,分别写着 “F” 和 “B” 。小明突然记起来,这两个按钮可以控制矿车在轨道上前进和后退。 按 F,会前进 97 米。按 B 会后退127 米。 透过昏暗的灯光,小明看到自己前方 1 米远正好有个监控探头。 他必须设法使得矿车正好停在摄像头的下方,才有机会争取同伴的援助。 或许,通过多次操作 F 和 B 可以办到。矿车上的动力已经不太足,黄色的警示灯在默默闪烁… 每次进行 F 或 B 操作

2022-03-23 21:34:13 70

原创 Nim游戏

题目:一共有N堆石子,编号1....n,第i堆中有个a[i]个石子。每次操作Alice和Bob可以从任意一堆石子中取出任意数量的石子,至少取一颗,至多取出这一堆剩下的所有石子。两个人轮流行动,取光所有石子的一方获胜。Alice为先手。给定a,假设两人都采用最优策略,谁会获胜?import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] a

2022-03-23 15:23:29 3567

原创 天平称重:变种3进制

题目:用天平称重时,我们希望用尽可能少的砝码祝贺称出尽可能多的重量。如果有无限个砝码,但他们的重量分别是1,3,9,27,81....等3的指数幂神奇之处在于用他们的组合可以称出任意整数重量(砝码允许放在左右两个盘中)。本题目要求编程实现:对用户给定的重量,给出砝码组合方案,重量<1000000。例如:用户输入:5程序输出:9-3-1import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public.

2022-03-23 15:02:56 394

原创 字符串匹配---KMP

import javax.sound.sampled.EnumControl;import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); String strA = .

2022-03-22 19:41:13 36

原创 字符串匹配---RabinKarp

先计算字串的hash 然后滚动的预先计算原串长度为字串的hash 最后进行查找 是否有和字串hash相同的 返回结果import javax.sound.sampled.EnumControl;import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { S.

2022-03-22 16:07:32 274

原创 编程之美---最短摘要的生成

题目背景:互联网搜索以及成为了大家工作和生活的一部分。在输入一些关键词之后,搜索引擎会返回许多结果,每个结果都包含一段概括网页内容的摘要。例如,再www.live.com中搜索“微软亚洲研究院 使命“,第一个结果是微软亚洲研究院的首页,如图 3-7所示。再搜索结果中,标题和URL之间的内容就是我们所说的摘要:假设给定的已经是经过网页分词之后的结果,词语序列数组为W。其中W[0],W[1]....W[N]为一些已经分好的词语。假设用户输入的搜索关键词为数组Q。其中Q[0],Q[1]....

2022-03-21 14:35:09 386

原创 Leetcode 125.验证回文串

题目:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true解释:"amanaplanacanalpanama" 是回文串示例 2:输入: "race a car"输出: false解释:"raceacar" 不是回文串“回文串”是一个正读和反读都一样的字符串定义俩个游标l,r 一个从头移动

2022-03-21 10:22:38 139

原创 去掉字符串连续出现的k次的0

题目:移除字符串中连续出现的k个0。例如:String StringA = "A00000B00",k=3 返回 "A00B00"。import javax.sound.sampled.EnumControl;import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] arg.

2022-03-21 09:57:14 192

原创 将字符串中按单词翻转

题目:将字符串按单词翻转,如here you are 翻转成are you here。import javax.sound.sampled.EnumControl;import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner input = n

2022-03-21 09:44:06 135

原创 旋转词---

题目:给定俩个字符串s1和s2,要求判定s2是否能够被通过s1作循环移位(rotate)得到的字符串包含。例如,给定s1 = AABCD和s2=CDAA,返回true;给定s1=ABCD和s2 = ACBD,返回true。import javax.sound.sampled.EnumControl;import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main

2022-03-21 09:36:50 236

原创 CC150---压缩字符串

题目:利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串"aabcccccaaa"经压缩会变成"a2b1c5a3"。若压缩后的字符串没有变短,则返回原先的字符串。给定一个String iniString为待压缩的串(长度小于等于10000),保证串内字符均为由大小写英文字母组成,返回一个string,为所求的压缩后或为变化的串。测试样例:"aabcccccaaa”返回:"a2b1c5a3"import javax.sound.sampled.EnumCon

2022-03-20 23:43:49 294

原创 CC150---替换字符串中的空格

题目:请编写一个方法,将字符串中的空格全部替换成“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串有大小写的英文字母组成。给你一个String iniString为原始的串,以及串的长度 int len,返回替换后的String。测试样例:"Mr John Smith" 13返回:"Mr%20John%20Smith"import javax.sound.sampled.EnumControl;import java.sq

2022-03-20 23:25:50 95

原创 CC150---变形词问题

题目:给定俩个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 这里规定大小写为不同字符,且考虑字符串中的空格。给定一个String StringA和一个String StringB,请返回要给bool,代表两串是否重新排列后可相同。保证两串的长度都小于等于5000。测试样例:"Here you are" , "Are you here"返回:false对ASCII进行计数 判断是否等于0import javax.sound.sampled.Enu

2022-03-20 23:16:11 87

原创 CC150---请实现一个算法,翻转一个给定的字符串

测试样例:"This is nowcoder"返回:"redocwon si sihT"方法一:倒叙输出import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in);

2022-03-20 23:02:58 137

原创 CC150---判断字符串有无重复字符

题目:实现一个算法,确定一个字符串的所有字符是否全都不同。假使不允许使用额外的数据结构,又该如何处理?如果字符集为ASCII 可以利用ASCII进行筛选import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { public static void main(String[] args) { Scanner input = new

2022-03-20 22:58:32 1235

原创 子矩阵最大累加和

题目:给定一个矩阵matrix,其中的值有正、有负、有0,返回子矩阵的最大累加和。例如:matrix为:-1 -1 -1-1 2 2-1 -1 -1其中最大累加和的子矩阵为:2 2所以返回4。求每行的最大子数组最大累加和 再将后面行累加再以行来找最大和import java.sql.Array;import java.util.*;// 1:无需package// 2: 类名必须Main, 不可修改public class Main { .

2022-03-20 21:08:19 338

空空如也

空空如也

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

TA关注的人

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