- 博客(67)
- 问答 (1)
- 收藏
- 关注
原创 AcWing1402.星空之夜
【题目链接】夜空深处,闪亮的星星以星群的形式出现在人们眼中,形态万千。一个星群是指一组非空的在水平,垂直或对角线方向相邻的星星的集合。一个星群不能是一个更大星群的一部分。星群可能是相似的。如果两个星群的形状、包含星星的数目相同,那么无论它们的朝向如何,都认为它们是相似的。通常星群可能有 8 种朝向,如下图所示:现在,我们用一个二维 01矩阵来表示夜空,如果一个位置上的数字是 1,那么说明这个位置上有一个星星,否则这个位置上的数字应该是 0。
2024-04-05 21:22:45
542
原创 AcWing849.Dijkstra求最短路I及850.Dijkstra求最短路II
题目链接:(849)给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环,所有边权均为正值。请你求出 1 号点到 n 号点的最短距离,如果无法从 1 号点走到 n号点,则输出 −1。
2024-04-02 21:04:08
443
原创 Acwing173. 矩阵距离
多源BFS问题,主要在找到BFS的起点,将所有的起点放入到队列当中,再开始搜索。一个 N 行 M 列的矩阵 B,相邻两个整数之间用一个空格隔开。接下来一个 N 行 M 列的 01 矩阵,数字之间没有空格。第一行两个整数 N,M。
2023-06-05 23:42:25
154
原创 Acwing1252. 搭配购买
物品体积可以看做是价格cost[i],物品价值可以看做云朵价值val[i],对于每个合并后的云朵节点,有选与不选两种可能,找到能用w买到的最大价值。第 n+2∼n+1+m 行,每行两个整数 ui,vi,表示买 ui就必须买 vi,同理,如果买 vi 就必须买 ui。第 11 行包含三个整数 n,m,w表示有 n 朵云,m 个搭配,Joe有 w 的钱。但是商店老板跟他说,一些云朵要搭配来买才好,所以买一朵云则与这朵云有搭配的云都要买。第 2∼n+1行,每行两个整数 ci,di 表示 i 朵云的价钱和价值。
2023-06-02 13:51:49
145
原创 Acwing241. 楼兰图腾
要组成V即要前面的数字比当前数字大,后面的数字也要比当前数字大,可以将数字的个数看成变量,用前缀和的思想求解,组成的方案数就是前面比当前数字大的数A与后面比当前数字大的数B相乘之后的结果(排列组合)如果三个点 (i,yi),(j,yj),(k,yk)(i,yi),(j,yj),(k,yk) 满足 1≤i
2023-05-28 23:46:09
630
原创 区间最大值(ST表)
第 3\sim Q+23∼Q+2 行每行表示一个询问,每个询问包含两个整数 L,RL,R,表示区间的左右端点。第 2 行包含 NN 个非负整数 a1,a2,...,aN,表示数组 a 元素的值。给定一个长度为 N 的数组 a,其值分别为a1,a2,...,aN。输入第 1 行包含两个正整数 N,Q,分别表示数组 a的长度和询问的个数。现有 Q 个询问,每个询问包含一个区间,请回答该区间的最大值为多少。输出共 Q 行,每行包含一个整数,表示相应询问的答案。
2023-05-24 21:35:48
151
原创 蓝桥杯2019年省赛——扫地机器人
第一台路线:2-1-2-3-4-3-2,清 扫了 1、2、3、4 号区域。第二台路线 5-6-7-6-5,清扫了 5、6、7。第三台路线 10-9-8-9-10,清扫了 8、9 和 10。本题属于二分算法题目,求最短的花费时间,所以可以对花费的时间使用二分来求解,最短的时间就是每个位置都已打扫完0,最长就是只有一台机器需要打扫n个地点且要回到原点,所以花费时间最长为2*n.if(check(mid))//符合条件。请你编写一个程序,计算每台机器人的清扫路线,使得。其中,1≤K
2023-05-24 20:36:23
980
原创 蓝桥杯2021年省赛——受伤的皇后
与n皇后的思路一致,n皇后问题对对角线的考虑只是是否在同一对角线上,而本题提出两个皇后的行数差值大于等于3的时候可以在同一对角线上。将n皇后中对于对角线的标记由简单的true,false变为标记最后放置的行号,如果差值大于等于3或者当前对角线没有被放置过就可以放置。输入的第一行包含一个整数 n。请问一共有多少种摆放方案。输出一个整数,表示答案。其中,1≤n≤10。
2023-05-22 19:21:55
104
原创 蓝桥杯2022年省赛——超级质数
如果一个质数 P 的每位数字都是质数, 而且每两个相邻的数字组成的两位 数是质数, 而且每三位相邻的数字组成的三位数是质数, 依次类推, 如果每相 邻的 k 位数字组成的 k 位数都是质数, 则 P 称为超级质数。本题的结果为一 个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。如果把超级质数 P 看成一个字符串, 则这个超级质数的每个子串都是质 数。* to_string()函数可以将数字转化为字符串。* stio()函数可以将字符串转化为数字。
2023-05-22 19:00:46
81
原创 最小质因子之和(Easy Version)
定义 F(i)表示整数 i的最小质因子。现给定一个正整数 N,请你求出 ∑2nF(i)。运用埃氏筛进行素数筛选,加前缀和处理最小质因子的和,避免超时。第 1 行为一个整数 T,表示测试数据数量。输出共 T行,每行包含一个整数,表示答案。接下来的 T 行每行包含一个正整数 N。
2023-05-21 21:07:16
236
原创 Acwing1290. 越狱
所有可能的 6 种状态为:(000)(001)(011)(100)(110)(111)。监狱有连续编号为 1 到 n 的 n 个房间,每个房间关押一个犯人。如果相邻房间的犯人信仰的宗教相同,就可能发生越狱。有 m 种宗教,每个犯人可能信仰其中一种。可能越狱的状态数,对 100003 取余。共一行,包含两个整数 m 和 n。求有多少种状态可能发生越狱。【思路】(排列组合)
2023-05-10 21:28:08
68
原创 Acwing456. 车站分级
现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车站 xx,则始发站、终点站之间所有级别大于等于火车站 xx 的都必须停靠。第 i+1行(1≤i≤m)中,首先是一个正整数 si(2≤si≤n),表示第 i趟车次有 si 个停靠站;其中,前 4 趟车次均满足要求,而第 55 趟车次由于停靠了 3 号火车站(2 级)却未停靠途经的 6 号火车站(亦为 2 级)而不满足要求。现有 mm 趟车次的运行情况(全部满足要求),试推算这 nn 个火车站至少分为几个不同的级别。
2023-05-10 20:47:59
878
原创 Acwing164. 可达性统计
第一行两个整数 N,M,接下来 MM 行每行两个整数x,y,表示从 x 到 y 的一条有向边。给定一张 N 个点 M 条边的有向无环图,分别统计从每个点出发能够到达的点的数量。输出共 N 行,表示每个点能够到达的点的数量。
2023-05-10 15:44:28
64
原创 Acwing1293. 夏洛克和他的女朋友
华生挑战夏洛克,让他给这些珠宝染色,使得一件珠宝的价格是另一件珠宝的价格的质因子时,两件珠宝的颜色不同。他买了 n 件珠宝,第 i件的价值是 i+1,也就是说,珠宝的价值分别为 2,3,…第二行 n 个整数,表示第 1 到第 n 件珠宝被染成的颜色。情人节到了,他想送给女友一些珠宝当做礼物。第一行一个整数 k,表示所使用的颜色数;并且,华生要求他使用的颜色数尽可能少。只有一行一个整数 n,表示珠宝件数。请用 1 到 k 表示你用到的颜色。请帮助夏洛克完成这个简单的任务。若有多种答案,输出任意一种。
2023-05-05 21:41:32
401
原创 蓝桥杯2012年省赛——棋盘放麦子
你一定听说过这个故事。国王对发明国际象棋的大臣很佩服,问他要什么报酬,大臣说:请在第 1 个棋盘格放 1 粒麦子,在第 2 个棋盘格放 2 粒麦子,在第 3 个棋盘格放 4 粒麦子,在第 4 个棋盘格放8 粒麦子,......后一格的数字是前一格的两倍,直到放完所有棋盘格(国际象棋共有 64 格)。【思路】运用高精度乘法计算出每个棋盘放的麦子数,再用高精度加法计算出麦子的总和。当时的条件下无法准确计算,但估算结果令人吃惊:即使全世界都铺满麦子也不够用!请你借助计算机准确地计算,到底需要多少粒麦子。
2023-04-05 19:51:15
100
原创 等差数列2019
第二行包含 N 个整数A1,A2,⋅⋅⋅,AN。(注意 A_1A1 ∼ A_NAN 并不一定是按等差数列中的顺序给出)样例说明: 包含 2、6、4、10、20 的最短的等差数列是 2、4、6、8、10、12、14、16、 18、20。但是粗心的小明忘记了一 部分的数列,只记得其中 N 个整数。现在给出这 N 个整数,小明想知道包含这 N 个整数的最短的等差数列有几项?其中,2≤N≤105,0≤Ai≤109。输入的第一行包含一个整数 N。输出一个整数表示答案。
2023-04-05 19:06:43
100
原创 蓝桥杯2012年省赛——猜生日
今年的植树节(20122012 年 33 月 1212 日),小明和他的叔叔还有小伙伴们一起去植树。休息的时候,小明的同学问他叔叔多大年纪,他叔叔说:“我说个题目,看你们谁先猜出来!格式是年月日连成的 88 位数。“把我出生的年月日连起来拼成一个 88 位数(月、日不足两位前补 00)正好可以被今天的年、月、日整除!他想了想,又补充到:“再给个提示,我是 66 月出生的。根据这些信息,请你帮小明算一下,他叔叔的出生年月日。【答案】19550604。
2023-04-05 14:52:23
59
原创 蓝桥杯2019年省赛——年号字串
小明用字母 A 对应数字 1,B 对应 2,以此类推,用 Z 对应 26。对于 27 以上的数字,小明用两位或更长位的字符串来对应,例如 AA 对应 27,AB 对应 28,AZ 对应 52,LQ 对应 329。【注意】i个字母可以组合出26^i个数字。请问 2019 对应的字符串是什么?
2023-04-05 14:03:50
81
原创 蓝桥杯2021年省赛——路径
对于两个不同的结点 a, b,如果 a 和 b 的差的绝对值大于 21,则两个结点 之间没有边相连;如果 a 和 b 的差的绝对值小于等于 21,则两个点之间有一条 长度为 a 和 b 的最小公倍数的无向边相连。结点 3 和结点 24 之间有一条无 向边,长度为 24;结点 15 和结点 25 之间有一条无向边,长度为 75。小蓝学习了最短路径之后特别高兴,他定义了一个特别的图,希望找到图 中的最短路径。请计算,结点 1 和结点 2021 之间的最短路径长度是多少。【朴素dijkstra算法】
2023-04-05 13:47:02
62
原创 Acwing868. 筛质数
给定一个正整数 n,请你求出 1∼n 中质数的个数。共一行,包含一个整数,表示 1∼n 中质数的个数。共一行,包含整数 n。
2023-04-04 21:01:34
62
原创 Acwing858. Prim算法求最小生成树(模板题)
由 V 中的全部 n 个顶点和 E 中 n−1条边构成的无向连通子图被称为 G 的一棵生成树,其中边的权值之和最小的生成树被称为无向图 G 的最小生成树。给定一张边带权的无向图 G=(V,E),其中 V 表示图中点的集合,E 表示图中边的集合,n=|V||,m=|E|。共一行,若存在最小生成树,则输出一个整数,表示最小生成树的树边权重之和,如果最小生成树不存在则输出。给定一个 n 个点 m 条边的无向图,图中可能存在重边和自环,边权可能为负数。求最小生成树的树边权重之和,如果最小生成树不存在则输出。
2023-04-03 11:22:38
57
原创 蓝桥杯2016年省赛——四平方和
并对所有的可能表示法按 a,b,c,da,b,c,d 为联合主键升序排列,最后输出第一个表示法。程序输入为一个正整数 N (N
2023-03-30 21:08:50
202
原创 蓝桥杯2017年省赛——跳蚱蜢
请你计算一下,如果要使得蚱蜢们的队形改为按照逆时针排列, 并且保持空盘的位置不变(也就是 1-81−8 换位,2-72−7换位,...),至少要经过多少次跳跃?如下图所示: 有 99 只盘子,排成 11 个圆圈。其中 88 只盘子内装着 88 只蚱蜢,有一个是空盘。我们把这些蚱蜢顺时针编号为 11 ~ 88。每只蚱蜢都可以跳到相邻的空盘中, 也可以再用点力,越过一个相邻的蚱蜢跳到空盘中。
2023-03-30 20:37:36
48
原创 蓝桥杯2019年省赛——迷宫
的顺序通过迷宫, 一共 10 步。其中 D、U、L、R 分别表示向下、向上、向左、向右走。对于下面这个更复杂的迷宫(30行 50 列),请找出一种通过迷宫的方式,其使用的步数最少,在步数最少的前提下,请找出字典序最小的一个作为答案。迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这 个它的上、下、左、右四个方向之一。下图给出了一个迷宫的平面图,其中标记为 11 的为障碍,标记为 00 的为可以通行的地方。对于上面的迷宫,从入口开始,可以按。请注意在字典序中 D
2023-03-30 18:13:32
53
原创 蓝桥杯2017年省赛——方格分割
试计算: 包括这 33 种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。如下就是三种可行的分割法。
2023-03-30 15:03:09
44
原创 蓝桥杯2019年国赛——递增序列
有LN、LN、AN、AN、IO、AO、LQ、AI、NO、NO、AQ、IN、ANLN、LN、AN、AN、IO、AO、LQ、AI、NO、NO、AQ、IN、AN 等 13个 递增序列。注意当两个字母是从左下到右上排列时,从左向右看和从上向下看 是不同的顺序。对于一个字母矩阵,我们称矩阵中的一个递增序列是指在矩阵中找到两个字母,它们在同一行,同一列,或者在同一 4545 度的斜线上,这两个字母从左向右看、或者从上向下看是递增的。对于下面的 30 行 50 列的矩阵,请问总共有多少个递增序列?
2023-03-30 08:39:33
723
原创 Acwing 3485. 最大异或和
对于 100%的数据,1≤M≤N≤105,0≤ai≤231−1。子数组的异或和即为子数组中所有元素按位异或得到的结果。第二行包含 N 个整数,其中第 i 个为 ai。给定一个非负整数数列 a,初始长度为 N。对于 50% 的数据,1≤M≤N≤1000。对于 20% 的数据,1≤M≤N≤100。子数组中,找出子数组异或和的最大值。输出可以得到的子数组异或和的最大值。第一行包含两个整数 N,M。请在所有长度不超过 M 的。注意:子数组可以为空。
2023-03-28 10:41:03
141
原创 蛇形填数——蓝桥杯2020年省赛(填空)
思路:可以分为从上往下和从下往上两种填写方向,如果从下往上填写,第i次填写的初始位置就是(i,1),横坐标-1,纵坐标+1,一共填写i次。同理可以得到从上往下写的规律。容易看出矩阵第二行第二列中的数是 55。请你计算矩阵中第 2020 行第 2020 列的数是多少?如下图所示,小明用从 11 开始的正整数“蛇形”填充无限大的矩阵。
2023-03-27 15:26:02
72
原创 2017年省赛 k倍区间(前缀和)
给定一个长度为 NN 的数列,A_1, A_2, \cdots A_NA1,A2,⋯AN,如果其中一段连续的子序列 A_i,A_i+1, \cdots A_jAi,Ai+1,⋯Aj ( i \leq ji≤j ) 之和是 KK 的倍数,我们就称这个区间 [i, j][i,j] 是 K 倍区间。第一行包含两个整数 NN 和 KK( 1 \leq N,K \leq 10^51≤N,K≤105 )。a[sum%k]++;/*从前缀和模k值相等的区间中任选两个。输出一个整数,代表 K 倍区间的数目。
2023-02-22 10:09:21
32
原创 蓝桥杯2018年省赛——付账问题
为了公平起见,我们希望在总付钱量恰好为 S 的前提下,最后每个人付的钱的标准差最小。这里我们约定,每个人支付的钱数可以是任意非负实数,即可以不是 1 分钱的整数倍。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢?标准差的介绍:标准差是多个数与它们平均数差值的平方平均数,一般用于刻画这些数之间的"偏差有多大"。if(a[i]*(n-i+1)>a[i];//输入每个人带的钱的数量。输出最小的标准差,四舍五入保留 4 位小数。
2023-02-01 00:01:45
99
C语言 怎么在数据之间使用空格
2021-11-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人