- 博客(27)
- 收藏
- 关注
原创 统计子矩阵
给定一个 N×M 的矩阵 A,请你统计有多少个子矩阵 (最小 1×1,最大 N×M) 满足子矩阵中所有数的和不超过给定的整数 K?对于 100% 的数据,1≤N,M≤500;0≤Aij≤1000;之后 N 行每行包含 M 个整数,代表矩阵 A。对于 70% 的数据,N,M≤100,第一行包含三个整数 N,M 和 K。对于 30% 的数据,N,M≤20,
2023-04-07 13:00:57
150
原创 纯质数 埃氏筛法
如果一个质数的所有十进制数位都是质数,我们称它为纯质数。例如:2,3, 5, 7, 23, 37都是纯质数,而11, 13, 17, 19, 29, 31不是纯质数。当然1, 4, 35也不是纯质数。如果一个正整数只有1和它本身两个约数,则称为一个质数(又称素数)。前几个质数是:2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37,…请问,在1到20210605中,有多少个纯质数?
2023-04-06 22:27:06
159
原创 完全背包问题
接下来有 N 行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 种物品的体积和价值。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。有 N 种物品和一个容量是 V 的背包,每种物品都有无限件可用。第一行两个整数,N,V,用空格隔开,分别表示物品种数和背包容积。第 i 种物品的体积是 vi,价值是 wi。输出一个整数,表示最大价值。
2023-04-06 19:50:42
371
原创 数位排序 c++蓝桥杯
当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面。1 到 13 的排序为:1, 10, 2, 11, 3, 12, 4, 13, 5, 6, 7, 8, 9。第 5 个数为 3。例如,2022 排在 409 前面,因为 2022 的数位之和是 6,小于 409 的数位之和 13。给定正整数 n,m,请问对 1 到 n 采用这种方法排序时,排在第 m 个的元素是多少?又如,6 排在 2022 前面,因为它们的数位之和相同,而 6 小于 2022。【评测用例规模与约定】
2023-04-05 22:32:39
66
原创 矩阵 蓝桥杯 c++
把 1 ∼ 2020 放在 2 × 1010 的矩阵里。要求同一行中右边的数字比左边数字大,同一列中下边的数字比上边的数字大。第一行的数字大于等于第二行的数字;两行数字相等时,为第二行加了1;第一行大于第二行是,可能是第一行多1也可能是第二行多了1;答案很大,你只需要给出方案数除以 2020 的余数即可。
2023-04-05 21:50:28
58
原创 解码 蓝桥杯c++
在这串字母中,有很多连续的是重复的。小明想了一个办法将这串字母表达得更短:将连续的几个相同字母写成字母 + 出现次数的形式。例如,连续的 5 个 a,即 aaaaa,小明可以简写成 a5(也可能简写成 a4a、aa3a 等)。为了方便表达,小明不会将连续的超过9个相同的字符写成简写的形式。现在给出简写后的字符串,请帮助小明还原成原来的串。小明有一串很长的英文字母,可能包含大写和小写。输出一个字符串,表示还原后的串。考点字符串转为数字直接上代码。输入一行包含一个字符串。
2023-04-05 21:35:58
96
原创 砝码称重 蓝桥杯 c++
2:放左边(我们规定左边为减);既然有减那就无法避免结果是负数的情况,可以对加绝对值,反过来思考也是最终的重量(左边大就可以看作左边减右边);最后一种为放右边,原有的重量加上本砝码的重量;你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN。对于所有评测用例,1≤N≤100,N 个砝码总重不超过 100000。能称出的 10 种重量是:1、2、3、4、5、6、7、9、10、11。第二行包含 N 个整数:W1,W2,W3,⋅⋅⋅,WN。对于 50% 的评测用例,1≤N≤15。
2023-04-05 19:42:22
920
3
原创 货物摆放 蓝桥杯
例如,当 n = 4 时,有以下 6 种方案:1×1×4、1×2×2、1×4×1、2×1×2、现在,小蓝有 n 箱货物要摆放在仓库,每箱货物都是规则的正方体。规定了长、宽、高三个互相垂直的方向,每箱货物的边都必须严格平行于长、小蓝希望所有的货物最终摆成一个大的立方体。即在长、宽、高的方向上。分别堆 L、W、H 的货物,满足 n = L × W × H。个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。给定 n,请问有多少种堆放货物的方案满足要求。小蓝有一个超大的仓库,可以摆放很多货物。
2023-04-05 13:11:53
63
原创 幂次方 快速幂 c++
即把幂次方转化为2进制。每次左移一位,最后幂次方的值为1;对任意正整数 N,计算 XNmod233333 的值。共一行,一个整数,表示 XNmod233333 的值。共一行,两个整数 X 和 N。
2023-04-04 22:25:13
97
原创 并查集问题 亲戚 c++
或许你并不知道,你的某个朋友是你的亲戚。他可能是你的曾祖父的外公的女婿的外甥女的表姐的孙子。如果能得到完整的家谱,判断两个人是否是亲戚应该是可行的,但如果两个人的最近公共祖先与他们相隔好几代,使得家谱十分庞大,那么检验亲戚关系实非人力所能及。在这种情况下,最好的帮手就是计算机。为了将问题简化,你将得到一些亲戚关系的信息,如Marry和Tom是亲戚,Tom和Ben是亲戚,等等。从这些信息中,你可以推出Marry和Ben是亲戚。请写一个程序,对于我们的关于亲戚关系的提问,以最快的速度给出答案。输入
2023-04-04 22:07:21
154
原创 分巧克力 c++ 蓝桥杯
6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力,是如何切出的呢?为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。当然小朋友们都希望得到的巧克力尽可能大,你能帮小Hi计算出最大的边长是多少么?小明拿出了珍藏的巧克力招待小朋友们。例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。输入保证每位小朋友至少能获得一块1x1的巧克力。输出切出的正方形巧克力最大可能的边长。
2023-04-04 12:41:02
166
原创 等差素数列 c++ 蓝桥杯
2,3,5,7,11,13,…2,3,5,7,11,13,…类似:7,37,67,97,127,1577,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。思路:我们首先取一个数组,数组的下标从1-n,全是素数;如题公差为30时长度为6,我们写公差时从30开始遍历即可;2004 年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。这是数论领域一项惊人的成果!长度为 10的等差素数列,其公差最小值是多少?上边的数列公差为 30,长度为 6。
2023-04-04 11:09:27
243
原创 包子凑数 蓝桥杯 c++
题意理解:想要后期无缝衔接凑出数量很大的值,他们的最大公约数必须为1,将数值凑到1万即可,若一万以前有很长的连续数值都可以用包子凑到,那么一万之后的数值都可以被凑齐。当顾客想买 11 个包子时,大叔就会选 2 笼 3 个的再加 1 笼 5 个的(也可能选出 1 笼 3 个的再加 2 笼 4 个的)。每当有顾客想买 X 个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这若干笼中恰好一共有 X 个包子。比如一共有 3 种蒸笼,分别能放 3、4 和 5 个包子。如果凑不出的数目有无限多个,输出INF。
2023-04-04 10:44:18
128
原创 X进制减法 C++ 蓝桥杯
如321,最低数位为二进制,第二数位为十进制,第三数位为八进制,是如何得出65的呢;要到第三位,需要第二位逢10进1,此时不要忘记进第二位需要逢2进1,则第三位的1为第二位的进制×第三位的进制即为10X2=20;现在有两个 X 进制表示的整数 A 和 B,但是其具体每一数位的进制还不确定,只知道 A 和 B 是同一进制规则,且每一数位最高为 N 进制,最低为二进制。例如说某种 X 进制数,最低数位为二进制,第二数位为十进制,第三数位为八进制,则 X 进制数 321 转换为十进制数为 65。
2023-04-04 10:19:42
146
原创 李白买酒加强版 蓝桥杯 c++
注意:壶里没酒 (0 斗) 时遇店是合法的,加倍后还是没酒;但是没酒时遇花是不合法的。由于答案可能很大,输出模 1000000007 的结果。请你计算李白这一路遇到店和花的顺序,有多少种不同的可能?一天,他提着酒壶,从家里出来,酒壶中有酒 2 斗。这一路上,他一共遇到店 N次,遇到花 M 次。对于 100%的评测用例:1≤N,M≤100。对于 40% 的评测用例:1≤N,M≤10。已知最后一次遇到的是花,他正好把酒喝光了。话说大诗人李白,一生好饮。无事街上走,提壶去打酒。逢店加一倍,遇花喝一斗。
2023-04-04 10:19:18
305
原创 回文日期 蓝桥杯 c++
也有人表示 20200202 并不仅仅是一个回文日期,还是一个 ABABBABA 型的回文日期。因为如果将这个日期按 “yyyymmdd” 的格式写成一个 8 位数是 20200202,恰好是一个回文数。给定一个 8 位数的日期,请你计算该日期之后下一个回文日期和下一个 ABABBABA 型的回文日期各是哪一天。第一行表示下一个回文日期,第二行表示下一个 ABABBABA 型的回文日期。对于所有评测用例,10000101≤N≤89991231,保证 NN 是一个合法日期的 8 位数表示。
2023-04-04 10:18:39
44
原创 乘积尾零 蓝桥杯 c++
即求每个数中能被多少个2整除或被多少个5整除;如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?思维问题,尾数为0;
2023-04-03 19:27:24
66
原创 蚂蚁感冒 c++
思维题,该题为考虑多少蚂蚁感冒,且无论如何最终蚂蚁都可以出去,所以我们只需要判断有多少只蚂蚁感冒。特殊情况: 第一只蚂蚁朝右行走,而它右边的蚂蚁都是朝右行走,此时只有第一只蚂蚁本身感冒,同理左边;接着的一行是 n 个用空格分开的整数 Xi, Xi 的绝对值表示蚂蚁离开杆子左边端点的距离。正值表示头朝右,负值表示头朝左,数据中不会出现 0 值,也不会出现两只蚂蚁占用同一位置。请你计算,当所有蚂蚁都爬离杆子时,有多少只蚂蚁患上了感冒。输出1个整数,表示最后感冒蚂蚁的数目。这些蚂蚁中,有 1 只蚂蚁感冒了。
2023-04-03 16:24:41
62
原创 剪格子 c++ 蓝桥杯
本题的要求就是请你编程判定:对给定的 m \times nm×n 的格子中的整数,是否可以分割为两个部分,使得这两个区域的数字和相等。程序先读入两个整数 m,nm,n 用空格分割 (m,n<10)(m,n<10),表示表格的宽度和高度。如果存在多种解答,请输出包含左上角格子的那个区域包含的格子的最小数目。我们沿着图中的红色线剪开,得到两个部分,每个部分的数字和都是 60。在所有解中,包含左上角的分割区可能包含的最小的格子数目。如下图所示,3 x 3 的格子中填写了一些整数。如果无法分割,则输出 0。
2023-04-03 15:47:51
77
原创 四平方和 c++
若暴力枚举,即使开平方数值也过大,复杂度n4无法通过(1s大概运行10的8次方),需要优化。所有的数范围要小于等于sqrt(n)。四平方和定理,又称为拉格朗日定理:每个正整数都可以表示为至多4个正整数的平方和。并对所有的可能表示法按 a,b,c,d 为联合主键升序排列,最后输出第一个表示法。输入存在多组测试数据,每组测试数据输入一行为一个正整数N (N<5000000)对于每组测试数据,要求输出4个非负整数,按从小到大排序,中间用空格分开。要求你对4个数排序:0 <= a <= b <= c <= d。
2023-04-03 14:48:02
733
原创 最大黑区域问题
每个测试例的第一行含两个整数n和m, (1 <=n,m<=100), 分别表示二值图像的行数与列数,后面紧跟着n行,每行含m个整数0或1,其中第i行表示图像的第i行的m个像素,0表示白像素,1表示黑像素。同一行的相邻两个整数之间用一个空格隔开,两个测试例之间用一个空行隔开,最后一个测试例之后隔一个空行,再接的一行含有两个整数0,标志输入的结束。黑区域由黑像素组成,一个黑区域中的每个像素至少与该区域中的另一个像素相邻,规定一个像素仅与其上、下、左、右的像素相邻。一个黑区域的面积是其所包含的像素的个数。
2023-04-03 12:42:25
112
1
原创 秘密行动 c++
小D接到一项任务,要求他爬到一座n层大厦的顶端与神秘人物会面。这座大厦有一个神奇的特点,每层的高度都不一样,同时,小D也拥有一项特殊能力,可以一次向上跳跃一层或两层,但是这项能力无法连续使用。动态规划问题,可以用一个二维数组dp[n][2],记录此楼层是爬或者跳跃而来;接下来n行每行一个整数ai,代表i层的楼层高度(ai <= 100)。输出1行,包含一个整数,表示所需的最短时间。第一行包含一个整数n,代表楼的高度。对100%的数据,n<=10000。对40%的数据,n<=100。
2023-04-03 11:10:20
60
1
原创 第39级台阶
如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!注意:不要提交解答过程,或其它的辅助说明文字。请你利用计算机的优势,帮助小明寻找答案。题目标题: 第39级台阶。要求提交的是一个整数。
2023-04-03 10:38:40
54
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人