![](https://img-blog.csdnimg.cn/20210223173703320.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
蓝桥杯 A/B组训练(省赛)
文章平均质量分 63
肝 就完事了
罚时大师月色
努力让更多小白和我一起共同进步
展开
-
1234. 倍数问题 dp
1234. 倍数问题视频讲解众所周知,小葱同学擅长计算,尤其擅长计算一个数是否是另外一个数的倍数。但小葱只擅长两个数的情况,当有很多个数之后就会比较苦恼。现在小葱给了你 n 个数,希望你从这 n 个数中找到三个数,使得这三个数的和是 K 的倍数,且这个和最大。数据保证一定有解。输入格式第一行包括 2 个正整数 n, K。第二行 n 个正整数,代表给定的 n 个数。输出格式输出一行一个整数代表所求的和。数据范围1≤n≤105,1≤K≤103,给定的 n 个数均不超过 108输入样原创 2021-03-10 00:24:32 · 356 阅读 · 0 评论 -
AcWing 1242. 修改数组 并查集的另类做法
AcWing 1242. 修改数组 给定一个长度为 N 的数组 A=[A1,A2,⋅⋅⋅AN],数组中有可能有重复出现的整数。现在小明要按以下方法将其修改为没有重复整数的数组。小明会依次修改 A2,A3,⋅⋅⋅,AN。当修改 Ai 时,小明会检查 Ai 是否在 A1∼Ai−1 中出现过。如果出现过,则小明会给 Ai 加上 1;如果新的 Ai 仍在之前出现过,小明会持续给 Ai 加 1,直到 Ai 没有在 A1∼Ai−1 中出现过。当 AN 也经过上述修改之后,显然 A 数组中就没有重复的整数了。原创 2021-03-09 21:47:04 · 125 阅读 · 0 评论 -
AcWing 1217. 垒骰子 简单dp+快速幂
AcWing 1217. 垒骰子 赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥!我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。atm想计算一下有多少种不同的可能的垒骰子方式。两种垒骰子方式相同,当且仅当这两种方式中对应高度的骰子的对应数字的朝向都相同。由于方案数可能过多原创 2021-03-09 20:07:06 · 210 阅读 · 0 评论 -
AcWing 1078. 旅游规划 树型dp(非常详细)
AcWing 1078. 旅游规划W 市的交通规划出现了重大问题,市政府下定决心在全市各大交通路口安排疏导员来疏导密集的车流。但由于人员不足,W 市市长决定只在最需要安排人员的路口安排人员。具体来说,W 市的交通网络十分简单,由 n 个交叉路口和 n−1 条街道构成,交叉路口路口编号依次为 0,1,…,n−1 。任意一条街道连接两个交叉路口,且任意两个交叉路口间都存在一条路径互相连接。经过长期调查,结果显示,如果一个交叉路口位于 W 市交通网最长路径上,那么这个路口必定拥挤不堪。所谓最长路径,定原创 2021-03-08 22:54:37 · 330 阅读 · 0 评论 -
AcWing 1070. 括号配对 区间dp
AcWing 1070. 括号配对 Hecy 又接了个新任务:BE 处理。BE 中有一类被称为 GBE。以下是 GBE 的定义:空表达式是 GBE如果表达式 A 是 GBE,则 [A] 与 (A) 都是 GBE如果 A 与 B 都是 GBE,那么 AB 是 GBE下面给出一个 BE,求至少添加多少字符能使这个 BE 成为 GBE。注意:BE 是一个仅由(、)、[、]四种字符中的若干种构成的字符串。输入格式输入仅一行,为字符串 BE。输出格式输出仅一个整数,表示增加的最少字符数。数据原创 2021-03-08 17:41:58 · 176 阅读 · 2 评论 -
AcWing 1303. 斐波那契前 n 项和 快速幂+矩阵乘法
AcWing 1303. 斐波那契前 n 项和大家都知道 Fibonacci 数列吧,f1=1,f2=1,f3=2,f4=3,…,fn=fn−1+fn−2。现在问题很简单,输入 n 和 m,求 fn 的前 n 项和 Snmodm。输入格式共一行,包含两个整数 n 和 m。输出格式输出前 n 项和 Snmodm 的值。数据范围1≤n≤2000000000,1≤m≤1000000010输入样例:5 1000输出样例:12这道题我本来想用简单的暴力解决问题,但是我发现测试样例很大,我知原创 2021-03-07 23:39:00 · 1315 阅读 · 2 评论 -
AcWing 1220. 生命之树 树形dp
AcWing 1220. 生命之树在X森林里,上帝创建了生命之树。他给每棵树的每个节点(叶子也称为一个节点)上,都标了一个整数,代表这个点的和谐值。上帝要在这棵树内选出一个非空节点集 S,使得对于 S 中的任意两个点 a,b,都存在一个点列 {a,v1,v2,…,vk,b} 使得这个点列中的每个点都是 S 里面的元素,且序列中相邻两个点间有一条边相连。在这个前提下,上帝要使得 S 中的点所对应的整数的和尽量大。这个最大的和就是上帝给生命之树的评分。经过 atm 的努力,他已经知道了上帝给每棵树上原创 2021-03-07 10:39:27 · 162 阅读 · 2 评论 -
AcWing 1243. 糖果 状态dp
AcWing 1243. 糖果 糖果店的老板一共有 M 种口味的糖果出售。为了方便描述,我们将 M 种口味编号 1∼M。小明希望能品尝到所有口味的糖果。遗憾的是老板并不单独出售糖果,而是 K 颗一包整包出售。幸好糖果包装上注明了其中 K 颗糖果的口味,所以小明可以在买之前就知道每包内的糖果口味。给定 N 包糖果,请你计算小明最少买几包,就可以品尝到所有口味的糖果。输入格式第一行包含三个整数 N,M,K。接下来 N 行每行 K 这整数 T1,T2,⋅⋅⋅,TK,代表一包糖果的口味。输出格式原创 2021-03-07 10:32:28 · 211 阅读 · 0 评论 -
AcWing 1225. 正则问题
AcWing 1225. 正则问题考虑一种简单的正则表达式:只由 x ( ) | 组成的正则表达式。小明想求出这个正则表达式能接受的最长字符串的长度。例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是6。输入格式一个由x()|组成的正则表达式。输出格式输出所给正则表达式能接受的最长字符串的长度。数据范围输入长度不超过100,保证合法。输入样例:((xx|xxx)x|(x|xx))xx 输出样例:6做这道题,我们首先要明白什么叫正则表原创 2021-03-06 20:05:52 · 169 阅读 · 1 评论 -
Acwing 1301. C 循环 扩展欧几里得算法
Acwing 1301. C 循环对于 C 语言的循环语句,形如:for (variable = A; variable != B; variable += C)statement;请问在 k 位存储系统中循环几次才会结束。若在有限次内结束,则输出循环次数。否则输出死循环。输入格式多组数据,每组数据一行四个整数 A,B,C,k。读入以 0 0 0 0 结束。输出格式若在有限次内结束,则输出循环次数。否则输出 FOREVER。数据范围1≤k≤32,0≤A,B,C<2k输入样原创 2021-03-06 19:15:14 · 244 阅读 · 0 评论 -
AcWing 1223. 最大比例 指数的最大公约数
AcWing 1223. 最大比例 X星球的某个大奖赛设了 M 级奖励。每个级别的奖金是一个正整数。并且,相邻的两个级别间的比例是个固定值。也就是说:所有级别的奖金数构成了一个等比数列。比如:16,24,36,54,其等比值为:3/2。现在,我们随机调查了一些获奖者的奖金数。请你据此推算可能的最大的等比值。输入格式第一行为数字 N ,表示接下的一行包含 N 个正整数。第二行 N 个正整数 Xi,用空格分开,每个整数表示调查到的某人的奖金数额。输出格式一个形如 A/B 的分数,要求 A原创 2021-03-06 18:40:08 · 712 阅读 · 0 评论 -
AcWing 1295. X的因子链 理解
AcWing 1295. X的因子链 输入正整数 X,求 X 的大于 1 的因子组成的满足任意前一项都能整除后一项的严格递增序列的最大长度,以及满足最大长度的序列的个数。输入格式输入包含多组数据,每组数据占一行,包含一个正整数表示 X。输出格式对于每组数据,输出序列的最大长度以及满足最大长度的序列的个数。每个结果占一行。数据范围1≤X≤220输入样例:23410100输出样例:1 11 12 12 24 6这道题其实我刚开始一直没有理解明白,后来仔细看了y总的原创 2021-03-05 18:10:40 · 2000 阅读 · 4 评论 -
AcWing 1246. 等差数列 最大公约数
AcWing 1246. 等差数列数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列,只记得其中 N 个整数。现在给出这 N 个整数,小明想知道包含这 N 个整数的最短的等差数列有几项?输入格式输入的第一行包含一个整数 N。第二行包含 N 个整数 A1,A2,⋅⋅⋅,AN。(注意 A1∼AN 并不一定是按等差数列中的顺序给出)输出格式输出一个整数表示答案。数据范围2≤N≤100000,0≤Ai≤109输入样例:52 6 4 10 20输出样例:10原创 2021-03-04 23:59:07 · 1145 阅读 · 3 评论 -
AcWing 1233. 全球变暖 bfs+判断
AcWing 1233. 全球变暖 你有一张某海域 N×N 像素的照片,”.”表示海洋、”#”表示陆地,如下所示:........##.....##........##...####....###........其中”上下左右”四个方向上连在一起的一片陆地组成一座岛屿,例如上图就有 2 座岛屿。由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。例如上图中的海域未来会原创 2021-03-04 23:45:08 · 133 阅读 · 1 评论 -
AcWing 1096. 地牢大师 多维bfs 学会思维上的推导
AcWing 1096. 地牢大师 你现在被困在一个三维地牢中,需要找到最快脱离的出路!地牢由若干个单位立方体组成,其中部分不含岩石障碍可以直接通过,部分包含岩石障碍无法通过。向北,向南,向东,向西,向上或向下移动一个单元距离均需要一分钟。你不能沿对角线移动,迷宫边界都是坚硬的岩石,你不能走出边界范围。请问,你有可能逃脱吗?如果可以,需要多长时间?输入格式输入包含多组测试数据。每组数据第一行包含三个整数 L,R,C 分别表示地牢层数,以及每一层地牢的行数和列数。接下来是 L 个 R 行原创 2021-03-04 23:18:58 · 184 阅读 · 1 评论 -
AcWing 1232. 三体攻击 差分(三维)+ 二分
AcWing 1232. 三体攻击三体人将对地球发起攻击。为了抵御攻击,地球人派出了 A×B×C 艘战舰,在太空中排成一个 A 层 B 行 C 列的立方体。其中,第 i 层第 j 行第 k 列的战舰(记为战舰 (i,j,k))的生命值为 d(i,j,k)。三体人将会对地球发起 m 轮“立方体攻击”,每次攻击会对一个小立方体中的所有战舰都造成相同的伤害。具体地,第 t 轮攻击用 7 个参数 lat,rat,lbt,rbt,lct,rct,ht 描述;所有满足 i∈[lat,rat],j∈[lbt,原创 2021-03-04 19:08:46 · 316 阅读 · 2 评论 -
AcWing 1238. 日志统计
AcWing 1238. 日志统计小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有 N 行。其中每一行的格式是:ts id表示在 ts 时刻编号 id 的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为 D 的时间段内收到不少于 K 个赞,小明就认为这个帖子曾是”热帖”。具体来说,如果存在某个时刻 T 满足该帖在 [T,T+D) 这段时间内(注意是左闭右开区间)收到不少于 K 个赞,该帖就曾是”热帖”。给定日志,请你帮助小明统计出所有原创 2021-03-04 18:57:25 · 206 阅读 · 1 评论 -
AcWing 1228. 油漆面积 线段树做法
AcWing 1228. 油漆面积X星球的一批考古机器人正在一片废墟上考古。该区域的地面坚硬如石、平整如镜。管理人员为方便,建立了标准的直角坐标系。每个机器人都各有特长、身怀绝技。它们感兴趣的内容也不相同。经过各种测量,每个机器人都会报告一个或多个矩形区域,作为优先考古的区域。矩形的表示格式为 (x1,y1,x2,y2),代表矩形的两个对角点坐标。为了醒目,总部要求对所有机器人选中的矩形区域涂黄色油漆。小明并不需要当油漆工,只是他需要计算一下,一共要耗费多少油漆。其实这也不难,只要算出所原创 2021-03-03 22:29:16 · 149 阅读 · 1 评论 -
AcWing 1215. 小朋友排队 逆序对+加线性数组
AcWing 1215. 小朋友排队n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是 0。如果某个小朋友第一次被要求交换,则他的不高兴程度增加 1,如果第二次要求他交换,则他的不高兴程度增加 2(即不高兴程度为 3),依次类推。当要求某个小朋友第 k 次交换时,他的不高兴程度增加 k。请问,要让所有小朋友按从低到高排队,他们的不高兴程度之和最小是多少。如果有两个小朋友身高一样原创 2021-03-03 19:45:42 · 126 阅读 · 1 评论 -
AcWing 245. 你能回答这些问题吗
AcWing 245. 你能回答这些问题吗给定长度为N的数列A,以及M条指令,每条指令可能是以下两种之一:1、“1 x y”,查询区间 [x,y] 中的最大连续子段和,即 maxx≤l≤r≤y{∑ri=lA[i]}。2、“2 x y”,把 A[x] 改成 y。对于每个查询指令,输出一个整数表示答案。输入格式第一行两个整数N,M。第二行N个整数A[i]。接下来M行每行3个整数k,x,y,k=1表示查询(此时如果x>y,请交换x,y),k=2表示修改。输出格式对于每个查询指令输出一个整原创 2021-03-01 21:46:51 · 171 阅读 · 0 评论 -
AcWing 1275. 最大数 线段树经典问题
AcWing 1275. 最大数给定一个正整数数列 a1,a2,…,an,每一个数都在 0∼p−1 之间。可以对这列数进行两种操作:添加操作:向序列后添加一个数,序列长度变成 n+1;询问操作:询问这个序列中最后 L 个数中最大的数是多少。程序运行的最开始,整数序列为空。写一个程序,读入操作的序列,并输出询问操作的答案。输入格式第一行有两个正整数 m,p,意义如题目描述;接下来 m 行,每一行表示一个操作。如果该行的内容是 Q L,则表示这个操作是询问序列中最后 L 个数的最大数是多少;原创 2021-03-01 19:38:05 · 237 阅读 · 1 评论 -
AcWing 243. 一个简单的整数问题2
AcWing 243. 一个简单的整数问题2 给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一:1、“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d。2、“Q l r”,表示询问 数列中第 l~r 个数的和。对于每个询问,输出一个整数表示答案。输入格式第一行两个整数N,M。第二行N个整数A[i]。接下来M行表示M条指令,每条指令的格式如题目描述所示。输出格式对于每个询问,输出一个整数表示答案。每个答案占一行。数据范围1≤N,M≤105,原创 2021-03-01 18:32:06 · 279 阅读 · 1 评论 -
AcWing 1265. 数星星 树状数组
AcWing 1265. 数星星天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标。如果一个星星的左下方(包含正左和正下)有 k 颗星星,就说这颗星星是 k 级的。1.png例如,上图中星星 5 是 3 级的(1,2,4 在它左下),星星 2,4 是 1 级的。例图中有 1 个 0 级,2 个 1 级,1 个 2 级,1 个 3 级的星星。给定星星的位置,输出各级星星的数目。换句话说,给定 N 个点,定义每个点的等级是在该点左下方(含正左、正下)的点的数目,试统计每个等级有多少个点。原创 2021-02-28 21:09:17 · 142 阅读 · 0 评论 -
AcWing 241. 楼兰图腾 树状数组(类似与前缀和统计小于某个数)
AcWing 241. 楼兰图腾在完成了分配任务之后,西部314来到了楼兰古城的西部。相传很久以前这片土地上(比楼兰古城还早)生活着两个部落,一个部落崇拜尖刀(‘V’),一个部落崇拜铁锹(‘∧’),他们分别用V和∧的形状来代表各自部落的图腾。西部314在楼兰古城的下面发现了一幅巨大的壁画,壁画上被标记出了N个点,经测量发现这N个点的水平位置和竖直位置是两两不同的。西部314认为这幅壁画所包含的信息与这N个点的相对位置有关,因此不妨设坐标分别为(1,y1),(2,y2),…,(n,yn),其中y1~y原创 2021-02-28 19:50:24 · 125 阅读 · 0 评论 -
AcWing 237. 程序自动分析
AcWing 237. 程序自动分析在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足。考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定n个形如xi=xj或xi≠xj的变量相等/不等的约束条件,请判定是否可以分别为每一个变量赋予恰当的值,使得上述所有约束条件同时被满足。例如,一个问题中的约束条件为:x1=x2,x2=x3,x3=x4,x1≠x4,这些约束条件显然是不可能同时被满足的,因此这个问题应判定为不可被满足。现在给出一些约束满足问题,请分别对原创 2021-02-28 19:06:23 · 162 阅读 · 0 评论 -
AcWing 1250. 格子游戏
AcWing 1250. 格子游戏Alice和Bob玩了一个古老的游戏:首先画一个 n×n 的点阵(下图 n=3 )。接着,他们两个轮流在相邻的点之间画上红边和蓝边:直到围成一个封闭的圈(面积不必为 1)为止,“封圈”的那个人就是赢家。因为棋盘实在是太大了,他们的游戏实在是太长了!他们甚至在游戏中都不知道谁赢得了游戏。于是请你写一个程序,帮助他们计算他们是否结束了游戏?输入格式输入数据第一行为两个整数 n 和 m。n表示点阵的大小,m 表示一共画了 m 条线。以后 m 行,每行首先有两个数原创 2021-02-28 13:50:02 · 628 阅读 · 0 评论 -
AcWing 1047. 糖果 背包问题
AcWing 1047. 糖果 由于在维护世界和平的事务中做出巨大贡献,Dzx被赠予糖果公司2010年5月23日当天无限量糖果免费优惠券。在这一天,Dzx可以从糖果公司的 N 件产品中任意选择若干件带回家享用。糖果公司的 N 件产品每件都包含数量不同的糖果。Dzx希望他选择的产品包含的糖果总数是 K 的整数倍,这样他才能平均地将糖果分给帮助他维护世界和平的伙伴们。当然,在满足这一条件的基础上,糖果总数越多越好。Dzx最多能带走多少糖果呢?注意:Dzx只能将糖果公司的产品整件带走。输入格式第原创 2021-02-27 20:14:58 · 436 阅读 · 0 评论 -
AcWing 1236. 递增三元组
AcWing 1236. 递增三元组给定三个整数数组A=[A1,A2,…AN],A=[A1,A2,…AN], A=[A1,A2,…AN],B=[B1,B2,…BN],B=[B1,B2,…BN], B=[B1,B2,…BN],C=[C1,C2,…CN],C=[C1,C2,…CN],C=[C1,C2,…CN],请你统计有多少个三元组 (i,j,k) 满足:1≤i,j,k≤NAi<Bj<Ck输入格式第一行包含一个整数 N。第二行包含 N 个整数 A1,A2,…AN。第三行包含 N原创 2021-02-26 21:34:22 · 230 阅读 · 0 评论 -
AcWing 1214. 波动数列 线性dp,类似于背包问题
[AcWing 1214. 波动数列](观察这个数列:1 3 0 2 -1 1 -2 …这个数列中后一项总是比前一项增加2或者减少3,且每一项都为整数。栋栋对这种数列很好奇,他想知道长度为 n 和为 s 而且后一项总是比前一项增加 a 或者减少 b 的整数数列可能有多少种呢?输入格式共一行,包含四个整数 n,s,a,b,含义如前面所述。输出格式共一行,包含一个整数,表示满足条件的方案数。由于这个数很大,请输出方案数除以 100000007 的余数。数据范围1≤n≤1000,−109≤s原创 2021-02-26 19:53:38 · 947 阅读 · 0 评论 -
AcWing 1212. 地宫取宝 四维线性dp
AcWing 1212. 地宫取宝X 国王有一个地宫宝库,是 n×m 个格子的矩阵,每个格子放一件宝贝,每个宝贝贴着价值标签。地宫的入口在左上角,出口在右下角。小明被带到地宫的入口,国王要求他只能向右或向下行走。走过某个格子时,如果那个格子中的宝贝价值比小明手中任意宝贝价值都大,小明就可以拿起它(当然,也可以不拿)。当小明走到出口时,如果他手中的宝贝恰好是 k 件,则这些宝贝就可以送给小明。请你帮小明算一算,在给定的局面下,他有多少种不同的行动方案能获得这 k 件宝贝。输入格式第一行 3 个原创 2021-02-26 17:32:00 · 181 阅读 · 1 评论 -
AcWing 1211. 蚂蚁感冒 两种简单的做法
AcWing 1211. 蚂蚁感冒长 100 厘米的细长直杆子上有 n 只蚂蚁。它们的头有的朝左,有的朝右。每只蚂蚁都只能沿着杆子向前爬,速度是 1 厘米/秒。当两只蚂蚁碰面时,它们会同时掉头往相反的方向爬行。这些蚂蚁中,有 1 只蚂蚁感冒了。并且在和其它蚂蚁碰面时,会把感冒传染给碰到的蚂蚁。请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。输入格式第一行输入一个整数 n, 表示蚂蚁的总数。接着的一行是 n 个用空格分开的整数 Xi, Xi 的绝对值表示蚂蚁离开杆子左边端点的距离原创 2021-02-26 15:01:03 · 143 阅读 · 0 评论 -
AcWing 1050. 鸣人的影分身 整数划分问题
AcWing 1050. 鸣人的影分身在火影忍者的世界里,令敌人捉摸不透是非常关键的。我们的主角漩涡鸣人所拥有的一个招数——多重影分身之术——就是一个很好的例子。影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制造出的影分身越强。针对不同的作战情况,鸣人可以选择制造出各种强度的影分身,有的用来佯攻,有的用来发起致命一击。那么问题来了,假设鸣人的查克拉能量为 M,他影分身的个数最多为 N,那么制造影分身时有多少种不同的分配方法?注意:影分身可以分配0点能量。分配方案不考虑顺序,例如:M原创 2021-02-27 18:44:29 · 113 阅读 · 0 评论 -
AcWing 1241. 外卖店优先级
AcWing 1241. 外卖店优先级“饱了么”外卖系统中维护着 N 家外卖店,编号 1∼N。每家外卖店都有一个优先级,初始时 (0 时刻) 优先级都为 0。每经过 1 个时间单位,如果外卖店没有订单,则优先级会减少 1,最低减到 0;而如果外卖店有订单,则优先级不减反加,每有一单优先级加 2。如果某家外卖店某时刻优先级大于 5,则会被系统加入优先缓存中;如果优先级小于等于 3,则会被清除出优先缓存。给定 T 时刻以内的 M 条订单信息,请你计算 T 时刻时有多少外卖店在优先缓存中。输入格式第原创 2021-02-27 16:40:08 · 178 阅读 · 0 评论 -
AcWing 99. 激光炸弹 区间前缀和
AcWing 99. 激光炸弹地图上有 N 个目标,用整数Xi,Yi表示目标在地图上的位置,每个目标都有一个价值Wi。注意:不同目标可能在同一位置。现在有一种新型的激光炸弹,可以摧毁一个包含 R×R 个位置的正方形内的所有目标。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个正方形的边必须和x,y轴平行。求一颗炸弹最多能炸掉地图上总价值为多少的目标。输入格式第一行输入正整数 N 和 R ,分别代表地图上的目标数目和正方形的边长,数据用空格隔开。接下来N行,每行输入一组数原创 2021-02-26 08:25:33 · 133 阅读 · 2 评论 -
AcWing 1221. 四平方和 二分
AcWing 1221. 四平方和四平方和定理,又称为拉格朗日定理:每个正整数都可以表示为至多 4 个正整数的平方和。如果把 0 包括进去,就正好可以表示为 4 个数的平方和。比如:5=02+02+12+227=12+12+12+22对于一个给定的正整数,可能存在多种平方和的表示法。要求你对 4 个数排序:0≤a≤b≤c≤d并对所有的可能表示法按 a,b,c,d 为联合主键升序排列,最后输出第一个表示法。输入格式输入一个正整数 N。输出格式输出4个非负整数,按从小到大排序,中间用原创 2021-02-25 22:53:10 · 174 阅读 · 0 评论 -
AcWing 116. 飞行员兄弟 递归+暴力
AcWing 116. 飞行员兄弟“飞行员兄弟”这个游戏,需要玩家顺利的打开一个拥有16个把手的冰箱。已知每个把手可以处于以下两种状态之一:打开或关闭。只有当所有把手都打开时,冰箱才会打开。把手可以表示为一个4х4的矩阵,您可以改变任何一个位置[i,j]上把手的状态。但是,这也会使得第i行和第j列上的所有把手的状态也随着改变。请你求出打开冰箱所需的切换把手的次数最小值是多少。输入格式输入一共包含四行,每行包含四个把手的初始状态。符号“+”表示把手处于闭合状态,而符号“-”表示把手处于打开状原创 2021-02-23 21:19:03 · 143 阅读 · 0 评论 -
AcWing 1209. 带分数 暴力枚举
AcWing 1209. 带分数 100 可以表示为带分数的形式:100=3+69258714还可以表示为:100=82+3546197注意特征:带分数中,数字 1∼9 分别出现且只出现一次(不包含 0)。类似这样的带分数,100 有 11 种表示法。输入格式一个正整数。输出格式输出输入数字用数码 1∼9 不重复不遗漏地组成带分数表示的全部种数。数据范围1≤N<106输入样例1:100输出样例1:11输入样例2:105输出样例2:6这道题暴力解决。首先原创 2021-02-23 20:35:46 · 218 阅读 · 0 评论 -
AcWing 93. 递归实现组合型枚举 递归模板
AcWing 93. 递归实现组合型枚举从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。输入格式两个整数 n,m ,在同一行用空格隔开。输出格式按照从小到大的顺序输出所有方案,每行1个。首先,同一行内的数升序排列,相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面(例如1 3 5 7排在1 3 6 8前面)。数据范围n>0 ,0≤m≤n ,n+(n−m)≤25输入样例:5 3输出样例:1 2 3 1 2原创 2021-02-23 19:39:16 · 162 阅读 · 0 评论 -
AcWing 95. 费解的开关 二进制全排列+思维
AcWing 95. 费解的开关你玩过“拉灯”游戏吗?25盏灯排成一个5x5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。我们用数字“1”表示一盏开着的灯,用数字“0”表示关着的灯。下面这种状态1011101101101111000011011在改变了最左上角的灯的状态后将变成:0111111101101111000011011再改变它正中间的灯后原创 2021-02-23 17:44:07 · 173 阅读 · 0 评论