自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (12)
  • 问答 (12)
  • 收藏
  • 关注

原创 测试点2错的来:1033 旧键盘打字 (20分)

立志用更少的代码做更高效的表达旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过 10​5​​ 个字符的串。可用的字符包括字母 [a-z, A-Z]、数字 0-9、以及下划线 _(代表空格)、,、.、-、+(代表上档键)。题目保证第 2 行输入的文字串非空。注意:如果上档键坏掉了,那

2020-12-31 19:18:43 831

原创 1032 挖掘机技术哪家强 (20分)——15行代码AC

立志用更少的代码做更高效的表达为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第 1 行给出不超过 10​5​​ 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。输入样例:63

2020-12-31 17:58:34 773 1

原创 测试点4错的来:1029 旧键盘 (20分)

立志用更少的代码做更高效的表达旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线 _(代表空格)组成。题目保证 2 个字符串均非空。输出格式:按照发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少

2020-12-31 17:36:24 1611 4

原创 1031 查验身份证 (15分)_21行满分代码

立志用更少的代码做更高效的表达一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10M:1 0 X 9 8 7 6 5 4 3 2现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码。输入格式:输

2020-12-31 15:46:35 1583 1

原创 对下图所示的连通网络G,用克鲁斯卡尔(Kruskal)算法求G的最小生成树T,请写出在算法执行过程中,依次加入T的边集TE中的边。说明该算法的基本思想及贪心策略,并简要分析算法的时间复杂度

对下图所示的连通网络G,用克鲁斯卡尔(Kruskal)算法求G的最小生成树T,请写出在算法执行过程中,依次加入T的边集TE中的边。说明该算法的基本思想及贪心策略,并简要分析算法的时间复杂度

2020-12-21 19:44:14 3230 1

原创 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 装载问题要求确定,是否有一个合理的装载方案可将这n

一、问题描述有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 ∑i=1nwi≤c1+c2\sum _{i=1}^{n} wi\leq c1+c2∑i=1n​wi≤c1+c2装载问题要求确定,是否有一个合理的装载方案可将这n个集装箱装上这2艘轮船。如果有,找出一种装载方案。分析:(1)首先将第一艘轮船尽最大可能装满;(2)然后将剩余的集装箱装上第二艘轮船。***#### 代码//最优装载问题,时间复杂度为O(2^n)#include<iostr

2020-12-21 15:36:06 11247 1

原创 重写0-1背包问题的回溯法,使算法能输出最优解

重写0-1背包问题的回溯法,使算法能输出最优解样例:4 73 95 102 71 4输出:20分析:构建二叉树,每个物品只有拿和不拿两种情况, 时间复杂度为O(2^n)。不难, 深搜模板, 笔者写了两种代码, 第一种可以输出搜索路径, 第二种是简化版的,只能输出最大值。代码一(搜索路径)#include<bits/stdc++.h>#define MAXLENGTH 10 using namespace std;int c, n, weight[MAXL

2020-12-21 15:31:42 3106

原创 设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是Li, 1<= i<= n。这n 个程序的读取概率分别是p1,p2,...,pn,且pi+p2+...+pn =

设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是Li, 1<= i<= n。这n 个程序的读取概率分别是p1,p2,…,pn,且pi+p2+…+pn = 1。如果将这n 个程序按 i1,i2,…,in 的次序存放,则读取程序ir 所需的时间tr=c*(Pi1Li2+Pi2Li2+…+Pir*Lir)。这n 个程序的平均读取 时间为t1+t2+…+tn。 磁带最优存储问题要求确定这n 个程序在磁带上的一个存储次序,使平均读取时间达到 最小。试设计一个解此问.

2020-12-21 13:53:43 4329

原创 问题描述 给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。 对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底

问题描述给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底的路径经过的数字和的最大值。输入输入数据的第1行是数字三角形的行数n,1≤n≤100。接下来n行是数字三角形各行中的数字。所有数字在0…99之间。输出输出数据只有一个整数,表示计算出的最大值。示例输入573 88 1 02 7 4 44 5 2 6 5示例输出30分析步骤——&.

2020-12-21 11:34:47 5883

原创 问题描述: 在一个圆形操场的四周摆放着n 堆石子。现要将石子有次序地合并成一堆。 规定每次只能选相邻的2 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。 试设计一个算法,计算出将n堆石子

问题描述:在一个圆形操场的四周摆放着n 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分分析要求每次合并必须是相邻的,和矩阵链乘的括号作用差不多。可以考虑往矩阵链乘最小代价的递归方程上靠。设dp[i,j]为第i堆到第j堆合并的最优解,则dp[i,j]=mindp[i,k]+dp[k+1,j]+vi+...vjdp[i,j]=min{dp[i,k]+dp[k+1,

2020-12-21 11:22:03 10651 1

原创 在一台超级计算机上,编号为1,2,…,n的n个作业等待批处理。批处理的任务就是将这n个作业分成若干批,每批包含相邻的若干作业。从时刻0开始,分批加工这些作业。在每批作业开始前,机器需要启动时间S,而完

问题描述:在一台超级计算机上,编号为1,2,…,n的n个作业等待批处理。批处理的任务就是将这n个作业分成若干批,每批包含相邻的若干作业。从时刻0开始,分批加工这些作业。在每批作业开始前,机器需要启动时间S,而完成这批作业所需的时间是单独完成批中各个作业需要时间的总和。单独完成第i个作业所需的时间是ti,所需的费用是它的完成时刻乘以一个费用系数fi。同一批作业将在同一时刻完成。例如,如果在时刻T开始一批作业x,x+1,…,x+k,则这一批作业的完成时刻均为T+S+(tx+tx+1+…+tx+k)。最优批处.

2020-12-21 11:15:55 1861

转载 【终极办法】import javax.servlet cannot be resolved 异常全面分析、解决

老夫掐指一算,点进这里的各位是在导入别人项目的时候出现该异常的,没办法,兄嘚你是不是想说:我丢,这个糟老头子算的真TM准(额,我拿起我的32米卷笔刀让你重新组织一下语言)不过问题不大,下面是解决import javax.servlet cannot be resolved以及javax.servlet.jsp.PageContextcannot be resolved to a type问题!!!哈哈,我解决了,打我鸭打我鸭QAQThe import javax.servlet cannot be

2020-12-15 19:18:29 4001 23

原创 【终极方法】This method must return a result of type boolean

翻译:此方法需要一个返回值要么就是把返回值忘记了要么就是这个方法还没写完

2020-12-09 23:16:49 3974

原创 【终极方法】 Cannot create PoolableConnectionFactory (Unknown database ‘jdbc‘)

翻译: 无法创建PoolableConnectionFactory, 原因是没有jdbc数据库就是说你没有创建JDBC数据库, 要使用自己创建的数据库的名字,查询数据库名字的操作:接下来就会显示具体的数据库: 比如我是在mysql数据库中建的表, 我的数据库名就叫做mysql。因此, 在导入时, 将jdbc换成mysql即可。...

2020-12-08 15:21:58 5102

原创 【终极方法】Syntax error on tokens, delete these tokens

情况一:可能是出现了中文括号、字符、标点、或者空格有问题(这种情况多见复制粘贴的代码), 仔细检查一下情况二:throw忘记写s

2020-12-07 23:17:55 1635

原创 【终极办法】Client does not support authentication protocol requested by server; consider upgrading mysql

1、 进入Mysql, 输入账号密码登录。2、 更改加密方式:mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;3、更改密码:该例子中 123为新密码mysql> ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123’;4、刷新:mysql> FLUSH PRIVI

2020-12-07 23:01:07 674

原创 【终极方法】Unknown initial character set index ‘255‘ received from server. Initial client characte

报错的原因是编码不对, 要在jdbc:mysql://localhost:3306/jdbc后面加上 ?useUnicode=true&characterEncoding=utf8

2020-12-07 22:58:20 686

原创 【已解决】“The import java.sql.Connection conflicts with a type defined in the same file“

翻译:“进口java.sql.Connection与同一文件中定义的类型冲突“就是导入的类和起的类名有冲突了, 检查一下改掉就OK了

2020-12-07 21:06:58 945

原创 id int primary key auto_increment是什么意思

这是一句Mysql语句id表示属性名int 表示属性类型primary key 表示这个属性是主键auto_incrementde表示这个值是自动增加的, 默认开始值是1,如果希望修改起始值,格式如下: alter table cin_01 auto_increment = 20;...

2020-12-07 20:31:10 11015

转载 (百万浏览量!)超详细MySQL安装及基本使用教程(史上最详细)

一、下载MySQL 首先,去数据库的官网http://www.mysql.com下载MySQL。 点击进入后的首页如下:  然后点击downloads,community,选择MySQL Community Server。如下图:  滑到下面,找到Recommended Download,然后点击go to download page。如下图:  点击download进入下载页面选择No thanks, just start ...

2020-12-07 16:32:07 884 1

转载 【史上最详细】动态规划:矩阵连乘问题(C++实现,含备忘录方法)

动态规划与分治法的异同:相同点:其基本思想都是将待求解问题分解为若干子问题,先求解子问题,再结合这些子问题的解得到原问题的解。差异点:与分治法不同的是,适合用动态规划法求解的问题经分解得到的子问题往往不是相互独立的。有些问题分解后的子问题往往是重复的,此时若用分支法则会重复计算耗费时间内存。总结:为了达到避免重复计算,可以用一个表来记录所有已解决的子问题的答案。不管该子问题以后是否被用到,只要它被计算过,就将其结果填入表中。步骤:找出最优解的性质,刻画其结构特征。递归地定义最优值。以自底向上

2020-12-06 23:01:33 11665 4

转载 【最详细】BFPRT算法:时间复杂度O(n)求第k小的数字

去年写了一篇对快排进行改进的算法,可以在时间复杂度 O(n)O(n)O(n)的情况下,找到第kkk小的数字。那时候,我还不知道这个算法叫BFPRT算法——现在知道了,还知道它又被称为中位数的中位数算法,它的最坏时间复杂度为O(n)O(n)O(n) ,它是由Blum、Floyd、Pratt、Rivest、Tarjan提出,它的思想是修改快速选择算法的主元选取方法,提高算法在最坏情况下的时间复杂度。1 STL std::nth_element而且,我还发现了STL中有一个类似的函数——std::nth_e

2020-12-06 16:49:06 1297

原创 P问题、NP问题、NPC问题、NP完全问题、第一个NPC问题是什么解释

每个问题用简单的一句话概括:1. P问题:可以用多项式时间的确定性算法判定和求解的问题。2. NP类问题:可以用多项式时间的确定性算法来检查和验证解3. NPC问题1. 令λ∈NP2. 对于所有的NP问题,都可以在多项式时间内转化为λ3. 称λ是NPC问题第一个NPC问题:布尔表达式的可满足性问题SAT...

2020-12-06 10:42:09 1416

原创 Typora里字体如何变红

Typore是支持HTML标签的, 因此,用HTML中设置字体颜色的属性即可。​ <strong style="color:red;">字体变为红色</strong>效果:字体变为红色

2020-12-05 20:36:14 4671

原创 我们讨论的是《战争之城》的一个简单版本。如果地图上只有空旷的空间,河流,钢墙和砖墙。你的任务是尽快得到奖金,假设没有敌人会打扰你(见下图) 你的坦克不能穿过河流和墙壁,但它可以通过射击摧毁砖墙。当你击

我们讨论的是《战争之城》的一个简单版本。如果地图上只有空旷的空间,河流,钢墙和砖墙。你的任务是尽快得到奖金,假设没有敌人会打扰你(见下图)你的坦克不能穿过河流和墙壁,但它可以通过射击摧毁砖墙。当你击中砖墙时,砖墙会变成空地,但是,如果你的子弹击中了钢墙,就不会对墙造成损伤。在每一个转弯中,你可以选择移动到一个相邻的(4个方向,而不是8个)空旷的地方,或者不移动地朝四个方向中的一个射击。射击会朝那个方向进行,直到它超出地图范围或者撞到墙上。如果子弹击中了一堵砖墙,这堵墙就会消失(也就是说,在这个回合中)。

2020-12-05 19:42:10 1066

原创 【已解决】[Error] cannot pass objects of non-trivially-copyable type ‘std::string {aka class std::basic_s

[Error] cannot pass objects of non-trivially-copyable type ‘std::string {aka class std::basic_string}’ through '…翻译: 不能用scanf输入string。解决办法:用cin输入

2020-12-05 11:50:29 3524 1

原创 2.在某应用软件中需要记录业务方法的调用日志,在不修改现有业务类的基础上为每一个类提供一个日志记录代理类,在代理类中输出日志,例如在业务方法 method() 调用之前输出“方法 method() 被

2.在某应用软件中需要记录业务方法的调用日志,在不修改现有业务类的基础上为每一个类提供一个日志记录代理类,在代理类中输出日志,例如在业务方法 method() 调用之前输出“方法 method() 被调用,调用时间为 2014-11-5 10:10:10 ”,调用之后如果没有抛异常则输出“方法 method() 调用成功”,否则输出“方法 method() 调用失败”。在代理类中调用真实业务类的业务方法,使用代理模式设计该日志记录模块的结构,绘制类图并编程模拟实现。代码//Subject:packa

2020-12-03 09:00:29 4016 8

原创 1.使用适配器模式设计一个仿生机器人:要求机器人可以模拟各种动物行为,在机器人中定义了一系列方法,如机器人发声方法talk(),机器人移动方法move()等。如果希望在不改变已有Bird类代码的基础上

1.使用适配器模式设计一个仿生机器人:要求机器人可以模拟各种动物行为,在机器人中定义了一系列方法,如机器人发声方法talk(),机器人移动方法move()等。如果希望在不改变已有Bird类代码的基础上,使得机器人能够像鸟一样喳喳叫cry(),像鸟一样自由飞翔fly(),使用适配器模式进行系统设计。绘制类图并编程模拟实现。全网首发有木有!类图:代码://Bird:package 适配器1;public class Bird { public void cry() { System.o

2020-12-02 17:21:24 4363 2

原创 1027 打印沙漏 (20分)——27行代码AC(结构清晰)

立志用更少的代码做更高效的表达本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印***** *** * ********所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入格式:输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。

2020-12-02 00:27:26 989 1

原创 1026 程序运行时间 (15分)(附四舍五入标准写法)(解题报告)

立志用更少的代码做更高效的表达要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数 f 的运行时间,我们只要在调用 f 之前先调用 clock(),获得一个时钟打点数 C1;在 f 执行完成后再调用 clock(),获得另一个时钟打点数 C2

2020-12-01 23:22:17 656

原创 1025 反转链表 (25分)(最详细最简便)(套路模板)

立志用更少的代码做更高效的表达给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转。例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4;如果 K 为 4,则输出应该为 4→3→2→1→5→6,即最后不到 K 个元素不反转。输入格式:每个输入包含 1 个测试用例。每个测试用例第 1 行给出第 1 个结点的地址、结点总个数正整数 N (≤10^5)、以及正整数 K (≤N),即要求反转的子链结点的个数。结点的地址是 5 位非负整数,

2020-12-01 23:01:29 1117

【最新2021版】阿里巴巴Java开发手册

《阿里巴巴 Java 开发手册》始于阿里内部规约,在全球Java开发者共同努力下,已成为业界普遍遵循的开发规范,涉及到如变量的命名、类和方法的使用、不同结构的定义方法等,让初学者在刚刚接触开发时就以最正确的姿态来学习,达到事半功倍的效果。 毫不夸张的说,每一位编程者都需要这样一本开发手册。

2021-06-03

紫书第三章习题源码.zip

紫书第三章习题源码,里面有我对例题的一些心得、总结和感悟。 所选代码都是可以找到的最优解。

2020-05-15

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

TA关注的人

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