- 博客(2567)
- 收藏
- 关注
原创 打卡信奥刷题(1636)用C++信奥 P7616 [COCI 2011/2012 #2] ZADAĆA
给定 NNN 个正整数 A1,A2,...,ANA_1,A_2,...,A_NA1,A2,...,AN 和 MMM 个正整数 B1,B2,...,BMB_1,B_2,...,B_MB1,B2,...,BM,求:gcd(∏i=1NAi,∏i=1MBi)\gcd(\prod\limits_{i=1}^NA_i,\prod\limits_{i=1}^MB_i)gcd(i=1∏NAi,i=1∏MBi)第一行包含一个正整数 NNN。第二行包含 NNN 个正整数 AiA_iAi。第三行包含一个正
2025-07-08 08:40:49
123
原创 打卡信奥刷题(1635)用C++信奥 P7588 双重素数(2021 CoE-II A)
题目P7588要求统计区间[L, R]中的"双重素数"数量,即素数且各位数字之和也是素数的数。解题思路是先使用埃拉托斯特尼筛法预处理素数表,然后筛选出满足数字和为素数的双重素数。程序采用位压缩技术优化空间,并预存小素数列表快速判断数字和是否为素数。对于每组查询,通过二分查找高效统计区间内的双重素数数量。该算法能处理最多1亿的数据规模,通过预处理和优化查询实现高效计算。输入输出样例展示了程序在不同区间的正确计算结果。
2025-07-08 07:17:45
486
原创 打卡信奥刷题(1634)用C++信奥 P7567 「MCOI-05」魔仙
本文介绍了「MCOI-05」魔仙编程题的解法。题目要求构造n个整数,使其和为0且积为n。当n能被4整除时,存在两种构造方案:若n/4为奇数,则输出2、-k2和交替的1与-1;若n/4为偶数,则输出-2、-k2和交替的1与-1。否则输出"w33zAKIOI"表示无解。代码通过分组处理输入数据,根据n值判断是否存在解并输出相应结果。该解法适用于大规模数据,满足题目要求的特殊评测条件。
2025-07-07 21:42:39
502
原创 打卡信奥刷题(1633)用C++信奥 P7557 [USACO21OPEN] Acowdemia S
摘要:题目描述Bessie博士通过发表论文提升学术影响力,h指数定义为至少h篇论文被引用h次的最大值。给定N篇论文的引用次数,她可以写K篇综述,每篇最多引用L篇论文来提升h指数。要求计算优化后的最大h指数。解法是对论文引用次数降序排序,通过前缀和和贪心策略判断能否通过综述操作将h指数提升到目标值。C++实现中处理了排序、前缀和计算和条件判断,最终输出可能的最高h指数值。测试样例展示了如何通过综述引用提升h指数。
2025-07-07 16:49:38
518
原创 打卡信奥刷题(1632)用C++实现信奥 P7544 [COCI 2019/2020 #4] Nivelle
题目要求找出字符串中颜色种类最少的连续子序列,若有多个则输出任意一个。采用双指针法,遍历1到26种颜色可能,计算每种颜色数量下最长子序列,比较找到最优解。输入样例验证了算法的正确性,如"hoin"输出1-4,"nivelle"输出4-7。代码维护颜色计数数组,通过滑动窗口调整区间,比较更新最优解。时间复杂度O(26n),适用于n≤1e5的数据规模。
2025-07-07 15:04:26
309
原创 打卡信奥刷题(1630)用C++实现信奥 P7522 ⎌ Nurture ⎌
摘要:题目描述一个序列操作问题,每次取出两个数进行减法操作,最终求剩余数的最大值。通过分析发现,最大值为所有元素绝对值总和减去最小和最大值的绝对值,再加上它们的差值。给出了C++实现代码,时间复杂度为O(n)。适用于算法竞赛选手,展示了如何通过数学推导优化操作结果。(150字)
2025-07-07 07:04:23
841
原创 打卡信奥刷题(1631)用C++实现信奥 P7542 [COCI 2009/2010 #1] MALI
题目要求为每个回合k找到最小的最大数对和(Ai+Bj),其中每个数只能使用一次。每次回合新增一对数字后,需将A和B序列中的数字重新配对,使得最大和最小。样例输入3组数据,输出每回合的最优解。C++实现使用双指针方法,维护A和B的计数数组,通过贪心策略将最小A与最大B配对来最小化最大和。算法复杂度为O(N*100),适用于N≤10^5的数据规模。输出每回合计算后的结果。
2025-07-06 10:48:50
442
原创 打卡信奥刷题(1629)用C++实现信奥 P7517 [省选联考 2021 B 卷] 数对
题目要求统计数组中满足条件的数对(i,j),其中a[i]是a[j]的倍数且i≠j。给定n个正整数,数据范围n≤2×10^5,a[i]≤5×10^5。 解决方案使用计数排序思想,统计每个数值的出现次数。通过双重循环枚举所有可能的倍数关系:外层遍历所有数值,内层遍历其倍数,将满足条件的数对数量累加。对于相同数值的数对,单独处理组合数。 算法时间复杂度为O(n + max(a)logmax(a)),通过预处理计数数组实现了高效计算,适用于大规模数据。实例输入输出展示了正确性。
2025-07-06 07:10:45
693
原创 打卡信奥刷题(1628)用C++实现信奥 P7471 [NOI Online 2021 入门组] 切蛋糕
题目摘要:切蛋糕问题要求将圆形蛋糕分给Alice、Bob和Cindy三人,每人需求比例为a:b:c。每次沿直径切一刀,求最少需要切几次才能满足分配要求。 关键点: 蛋糕可以切n刀得到2n个扇形 分配必须满足a:b:c的面积比例 需要找出最少刀数方案 输入输出: 输入包含多组测试数据,每组给出a,b,c三个整数 输出每组对应的最少刀数 解法分析: 根据比例关系分类讨论: 当两人需求为0时可能无需切刀 当两人需求相等时可1刀解决 其他情况通常需要2-3刀 数据范围:T≤10^4,0≤a,b,c≤10^8,保证a
2025-07-05 18:26:34
824
原创 打卡信奥刷题(1627)用C++实现信奥 P7464 [CERC2018] The Silence of the Lamps
题目要求统计体积不超过N且各边长不相同的长方体数量。摘要:给定T组查询,每组给出整数N,求满足a<b<c且a×b×c≤N的长方体个数。使用深度优先搜索预处理所有可能的边长组合,并利用前缀和数组快速查询。输入范围1≤T≤1e5,1≤N≤1e6。例如输入5时输出0,输入6时输出1。该方法通过预处理和前缀和优化,实现了高效查询。
2025-07-05 16:17:09
525
原创 打卡信奥刷题(1626)用C++实现信奥 P7412 [USACO21FEB] Year of the Cow S
摘要:题目描述奶牛Bessie利用牛年时空之门拜访N位祖先,最多进行K次穿越。所有祖先都不生活在牛年,需计算拜访所有祖先并返回的最小年数。解法将年份转换为12年周期处理,排序后计算最优穿越间隔。如样例输入5个年份和3次穿越,最优解为36年。C++实现通过排序和贪心策略,计算最小总年数。后续将继续分享算法竞赛题解和编程心得。
2025-07-05 14:06:37
1059
原创 打卡信奥刷题(1625)用C++实现信奥 P7404 [JOI 2021 Final] 有趣的家庭菜园 4 / Growing Vegetables is Fun 4
题目要求将序列通过区间加1操作变成先严格递增后严格递减的形式,求最小操作次数。摘要:给定一个长度为N的序列,每次操作可以选择一个区间使其中元素加1。目标是将序列变为存在某个k,使得前k项严格递增,后k到N项严格递减。需要计算最少操作次数。样例说明展示了不同情况下的操作方案。解题思路利用差分数组计算前后缀所需操作次数,时间复杂度为O(N)。适用于N≤2×10^5的数据规模。
2025-07-05 11:58:30
743
原创 打卡信奥刷题(1624)用C++实现信奥 P7399 [COCI 2020/2021 #5] Po
摘要:题目要求通过最少操作次数将全零数组变为目标数组a,操作规则为每次可以对连续区间加上正整数x,且操作区间必须互不相交或包含。关键解法是使用栈结构,当当前元素小于栈顶时弹出栈顶,若等于则跳过,否则计数并压入栈。样例2解释为两步操作:先全体加2,再中间三元素加1。最终C++代码实现简洁高效,时间复杂度为O(n),适用于大规模数据。
2025-07-05 08:31:43
605
原创 打卡信奥刷题(1623)用C++实现信奥 P7391 「TOCO Round 1」自适应 PVZ
题目摘要:PVZ僵尸防御问题 给定n只僵尸的出现时间[l_i, r_i)区间和m个豌豆射手,每个射手只能持续攻击一只僵尸且不能中断。求在最优安排下最少有多少僵尸能进入房子。通过贪心算法,将僵尸按右端点排序,用multiset维护射手可用时间,当没有可用射手时统计未防御的僵尸。时间复杂度O(nlogn),适用于大规模数据(2×10^5)。示例显示不同情况下最少被漏掉的僵尸数量。
2025-07-05 07:16:13
667
原创 打卡信奥刷题(1622)用C++实现信奥 P7383 「EZEC-6」加减
这是一道关于整数分解的编程题。题目要求将整数m分解为n个互不相同的正整数之和,并且这些数在加减运算中无法表示[1,m]区间内的至少一个数。解题关键在于判断是否存在解并构造符合条件的分解方案。当n(n+3)/2>m时无解。对于有解情况,可以采用特定构造方法:前n-1个数为2到n,最后一个数为m减去前n-1个数的和。无法表示的数通常选择m-1。题解提供了C++实现代码,通过输入输出样例演示了该算法的应用。题目来自EZEC比赛,采用捆绑测试机制,难度分级。
2025-07-04 14:51:15
948
原创 打卡信奥刷题(1621)用C++实现信奥 P7375 [COCI 2018/2019 #5] Jarvis
题目描述:Ivan有N架无人机,每架有出厂属性值A_i和出战需求值B_i。他可以选择一个整数X,将每架无人机的属性值调整为A_i+X。目标是找出能使最多无人机满足B_i=A_i+X的X值。 算法思路:通过计算X=B_i-A_i,统计每个X值对应的满足条件无人机数量,最终输出最大数量。使用数组存储差值频率,时间复杂度O(N)。 输入输出样例: 输入1架无人机,属性1需求2,输出1 输入2架无人机属性0需求1,输出2 输入2架无人机属性1,2需求5,5,输出1 数据范围:N≤1e5,A_i,B_i∈[-1e6,
2025-07-04 13:27:34
510
原创 打卡信奥刷题(1620)用C++实现信奥 P7370 [COCI 2018/2019 #4] Wand
题目描述N位巫师通过M次决斗争夺魔杖,初始魔杖归属巫师1。每次决斗若胜者击败当前魔杖持有者,则魔杖易主。要求通过调整决斗顺序,判断哪些巫师可能最终持有魔杖。输入N,M和M组决斗关系,输出每位巫师是否可能最终持有魔杖的01序列。 算法思路:利用有向图建模决斗关系,从初始节点1出发进行深度优先搜索,标记所有可达节点。能到达的节点均可能最终持有魔杖,输出对应标记即可。时间复杂度O(N+M),空间复杂度O(N+M)。 样例解析:样例1中巫师2和3均能从1到达,输出011;样例2中1和2可相互到达,输出11;样例3中
2025-07-04 11:30:55
878
原创 打卡信奥刷题(1619)用C++实现信奥 P7338 『MdOI R4』Color
题目P7338『MdOI R4』Color要求判断在2行n列的方格纸上,通过每次给相邻两个白色格子分别染红和蓝的操作,能否使指定格子变为红色。输入包含多组测试数据,每组给出方格列数和两行01串表示红色要求位置。输出"RP"表示可行,"++"表示不可行。样例分析展示了可行和不可行的情况。C++代码通过遍历检查每个必须染红的位置及其相邻位置的可染色性来判定结果。算法复杂度与n线性相关,适用于大规模数据。该题考察染色操作的可行性判断和相邻格子处理逻辑。
2025-07-04 10:27:56
859
原创 打卡信奥刷题(1618)用C++实现信奥 P7319 「PMOI-4」生成树
本题要求设计一种选数顺序,使得最终选出的n个数权值和最大。每次选数会影响剩余未选数的权值,具体规则为:第i次选原始权值为k的数时,其他未选数权值增加(-1)^(i+k+1)*k。解题关键在于发现权值变化的规律,通过数学推导得出最优策略:将数按特定条件排序(奇数位和偶数位分别处理),并与预先计算好的系数数组相乘求和。算法时间复杂度为O(nlogn),主要来自排序操作。示例代码展示了如何实现这一策略,通过双重排序和系数匹配来最大化最终权值和。
2025-07-04 08:31:25
830
原创 打卡信奥刷题(1617)用C++实现信奥 P7309 [COCI 2018/2019 #2] Kocka
这篇题目描述了一个二维矩阵重构问题:给定4个方向的观察数据(每行/列第一个障碍物的位置),判断是否存在满足条件的N×N矩阵。输入包含规模N和四个方向(左、右、上、下)的N个观测值。输出"DA"表示存在可行矩阵,"NE"表示不存在。样例1展示了可行情况,样例2展示了不可行情况。数据规模达1e5,要求高效验证四个方向观测数据的一致性。提供的C++代码通过检查各方向观测值的逻辑矛盾(如总和超标或单方向缺失)来快速判断可行性,符合题目要求的时空复杂度。
2025-07-04 07:05:39
1019
原创 打卡信奥刷题(1616)用C++实现信奥 P7305 [COCI 2018/2019 #1] Cipele
题目摘要:Nadan需要将N只左脚鞋和M只右脚鞋配对,每对包含一只左脚鞋和一只右脚鞋。目标是最大化配对数量,同时最小化所有配对中鞋子大小差的最大绝对值(丑陋度)。输入给出两堆鞋子的数量及各自尺寸,要求输出最优配对方案的最小丑陋度。关键解法是:先对鞋子尺寸排序,使用二分法确定最小可能的丑陋度,并通过双指针检查可行性。数据范围1≤N,M≤10^5,要求高效算法。
2025-07-03 16:02:13
592
原创 打卡信奥刷题(1615)用C++实现信奥 P7300 [USACO21JAN] No Time to Paint S
题目摘要:Bessie需要给N段栅栏涂色(颜色'A'-'Z'),每次只能涂连续区域且颜色由浅到深。考虑Q个查询,每个查询指定一个区间不涂色,要求计算涂其他区域的最少笔画数。解决方案是预处理前缀和后缀数组,通过f[i]记录前i段的笔画数,f2[i]记录i到n段的笔画数,每个查询的答案即为f[l-1]+f2[r+1]。样例输入8段栅栏和2个查询,输出分别为4和3笔画。算法时间复杂度O(N+Q)。
2025-07-03 14:14:46
570
原创 打卡信奥刷题(1614)用C++实现信奥 P7300 [USACO21JAN] No Time to Paint S
题目摘要:Bessie需要给栅栏涂色,栅栏由N段组成,每段可涂26种颜色(A-Z)。涂色规则是只能深色覆盖浅色。考虑Q个候选区间(a,b),对于每个区间,计算不涂区间(a,b)内的栅栏时,最少需要多少笔完成其他部分的涂色。输入包括栅栏长度N、查询数Q、目标颜色字符串和Q个区间。输出对每个区间的最小涂色次数。样例输入输出展示了如何计算。解法使用前缀和后缀数组预处理,快速查询任意区间外的涂色次数。时间复杂度为O(N+Q)。
2025-07-03 11:44:08
397
原创 打卡信奥刷题(1613)用C++实现信奥 P7286 「EZEC-5」人赢
摘要:本文介绍了洛谷题目P7286「EZEC-5」人赢的解析与C++实现。题目要求计算数组k中任意两元素x,y的函数f(x,y)最大值,函数分x≠y和x=y两种情况。通过将元素按k值排序并维护最大下标,算法高效求解最大值。数据范围1≤n≤1e6,需注意使用long long类型。代码采用O(nlogn)排序优化,正确处理边界条件。后续将分享更多算法竞赛题解与编程心得。
2025-07-03 11:03:49
802
原创 打卡信奥刷题(1612)用C++实现信奥 P7266 [BalticOI 2000] Honeycomb Problem
摘要:题目给定一个边长为n的蜂窝图,每个节点有数值。要求从顶行某点到底行某点,每次只能向左下或右下移动,且允许交换某一行两个节点的数值。求通过交换后路径节点数值之和的最大值。输入包括蜂窝图边长和节点数值,输出最大路径和。样例展示了交换某行节点后的一条最优路径。C++解法使用动态规划,分别计算不交换和交换情况下的最大值,最终输出结果。
2025-07-03 08:47:21
908
原创 打卡信奥刷题(1611)用C++实现信奥 P7260 [COCI 2009/2010 #3] RAZGOVOR
题目描述了一条街道上的房屋和电话探测器问题。探测器安装在房屋之间,记录两侧房屋的通话次数。给定n个探测器的位置和检测到的通话总数,要求计算一个月内最小可能的总通话次数。 摘要:在一条有m户人家的街道上,有n个探测器安装在房屋之间,每个探测器记录两侧房屋的通话次数。给定探测器位置和检测到的通话总数,要求计算满足所有探测器记录的最小总通话次数。解决方法是按探测器位置排序后,累加相邻探测器通话数的差值,得到最小可能的总通话量。输入输出样例展示了不同情况下的计算结果。
2025-07-03 07:12:13
534
原创 打卡信奥刷题(1610)用C++实现信奥 P7248 [BalticOI 2012] 括号 (Day1)
题目摘要:给定一个不合法括号序列S(仅由'('和')'组成),求有多少种合法括号序列在将所有'['和']'替换为'('后能得到S。合法括号序列定义包含三种情况:基础形式()和[],嵌套形式(A)/[A],以及连接形式AB。使用动态规划实现,维护二维数组dp[i][j]表示处理到第i个字符时栈深为j的方案数。最终结果为dp[n][0],即处理完所有字符且栈为空时的方案数。时间复杂度O(n^2),空间优化使用滚动数组。示例输入((()对应2种解([])和,输入(((((((对应14种解。数据范围n≤30000。
2025-07-02 16:15:14
690
原创 打卡信奥刷题(1609)用C++实现信奥 P7228 [COCI 2015/2016 #3] MOLEKULE
题目要求将一棵树的N-1条无向边定向,使得形成的有向图的最长路径最小。通过分析可知,最优解是将树进行二分图染色,使相邻节点颜色不同,然后按照深度奇偶性定向(如从奇数深度指向偶数深度),这样最长路径长度为1。给出的C++实现正是采用这种策略:构建树结构后DFS遍历计算节点深度,最后根据深度奇偶性决定边的方向。该算法时间复杂度为O(N),适用于N≤1e5的大数据规模。样例输出验证了这种方法的正确性。
2025-07-02 15:01:03
785
原创 打卡信奥刷题(1608)用C++实现信奥 P7223 [RC-04] 01 背包
题目要求计算所有2^n种物品选择方案的收益之和,其中收益为p的k次方(k为所选物品体积之和)。由于n可达1e6,直接枚举不可行。通过数学推导发现,收益总和等于各物品(1 + p^a_i)的乘积,利用快速幂计算每个(1 + p^a_i)并取模998244353。该方法时间复杂度O(n log p),适用于大规模数据。样例输入2个物品体积1和4,p=2时,计算结果2^0+2^1+2^4+2^5=51验证了算法的正确性。
2025-07-02 13:37:02
799
原创 打卡信奥刷题(1607)用C++实现信奥 P7209 [COCI 2020/2021 #3] Knjige
摘要: 题目要求将左侧书架的书按厚度从薄到厚排序,操作包括取书和放书两种。通过模拟排序过程:先将不符合顺序的书籍移到右侧,再按正确顺序放回。C++实现中,使用两个栈结构模拟左右书架,记录每一步操作指令。对于每个目标厚度,将左侧栈顶不符合的书籍移到右侧,找到目标后放回右侧,最后将所有书移回左侧完成排序。输出格式严格遵循题目要求,包括操作类型、使用手和涉及书架。该方案保证了在合理步数内完成排序任务。
2025-07-02 11:58:46
740
原创 打卡信奥刷题(1606)用C++实现信奥 P7191 [COCI 2007/2008 #6] GRANICA
题目要求找出所有正整数m>1,使得给定n个数除以m的余数相同。解题思路是先计算所有数对的差值的绝对值,然后找出这些差值的公约数作为可能的m值。实现时首先生成所有差值,找出最小差值,然后枚举其所有因数,验证是否为所有差值的公约数。最后输出符合条件的m值(不包括1)。时间复杂度主要取决于差值计算和因数枚举。
2025-07-02 08:32:13
696
原创 打卡信奥刷题(1605)用C++实现信奥 P7186 [CRCI2008-2009] TABLICA
本文讨论了COCI竞赛中关于团队讲解时间安排的问题。题目要求Ante和Goran两人需要依次为n个团队讲解算法,不能同时对同一团队讲解,求最少总时间。关键解法是:当最长讲解时间超过其他时间总和时,最短时间为2倍最长时长;否则为总时长之和。文章给出了C++实现代码,通过比较最大值与总和的差值来确定最优解。示例显示3个团队各需2时间时总时6,而4/1/2团队时为8。该算法高效处理大规模数据(n≤3×10^5),体现了贪心算法的应用。作者将持续分享编程竞赛相关题解。
2025-07-02 07:01:23
612
原创 打卡信奥刷题(1604)用C++实现信奥 P7176 [COCI 2014/2015 #4] PRIPREME
本文讨论了COCI竞赛中关于团队讲解时间安排的问题。题目要求Ante和Goran两人需要依次为n个团队讲解算法,不能同时对同一团队讲解,求最少总时间。关键解法是:当最长讲解时间超过其他时间总和时,最短时间为2倍最长时长;否则为总时长之和。文章给出了C++实现代码,通过比较最大值与总和的差值来确定最优解。示例显示3个团队各需2时间时总时6,而4/1/2团队时为8。该算法高效处理大规模数据(n≤3×10^5),体现了贪心算法的应用。作者将持续分享编程竞赛相关题解。
2025-07-01 15:00:11
667
原创 打卡信奥刷题(1603)用C++实现信奥 P7175 [COCI 2014/2015 #4] PŠENICA
这是一个关于Mirko和Slavko玩小麦茎秆游戏的编程题目。两人轮流操作小麦茎秆的高度,直到剩余不同高度的数量少于3时游戏结束。题目要求确定赢家以及最终高度范围。 摘要重点: 游戏规则详细说明 输入输出格式要求 包含3个样例展示 数据规模说明 提供C++解决方案代码 题目来源信息 摘要控制在150字以内,简明扼要地概括了题目内容和要求。
2025-07-01 12:45:44
873
原创 打卡信奥刷题(1602)用C++实现信奥 P7160 「dWoi R1」Sixth Monokuma‘s Son
题目摘要:给定一个n×m矩阵,要求找到一个特定结构的"矩阵环",即上下厚度为1且固定在首尾行,左右厚度不限的环形子矩阵,使其元素和最大。若无法满足条件则输出-1。数据范围:n≤10,m≤1e5,|a[i][j]|≤100。算法通过动态规划预处理列前缀和,用三个状态数组递推计算最大子矩阵和,时间复杂度O(m)。注意n≤2时的特殊处理。 (共137字)
2025-07-01 11:39:30
585
原创 打卡信奥刷题(1601)用C++实现信奥 P7159 「dWoi R1」Sweet Fruit Chocolate
题目摘要:给定一棵n个节点的树,每个节点u有属性a_u。对于所有2^n种选择节点的方案(每个节点可选或不选),计算每个方案中所有被选节点及其子树节点数的总和之和。答案需对998244353取模。 输入:n、各节点a值、树结构。输出:计算结果。样例输入3时,输出36。 解法:利用树形结构特性,每个节点u的贡献为a_u×2^(n-1)×(深度+1)。通过预处理2的幂次和DFS计算深度,线性时间求出结果。数据规模n≤1e6,需高效实现。
2025-07-01 09:28:18
563
原创 打卡信奥刷题(1600)用C++实现信奥 P7148 [USACO20DEC] Cowntagion S
Farmer John 和他的农民团队为了控制牛传染病 COWVID-19 在他们农场间的传播而夜以继日地工作。他们共同监控着N个农场(1≤N≤105),编号为1N。农场间由N−1条道路连接,使得每个农场都可以从农场1出发经过一些道路到达。很不幸,农场1中的一头奶牛的 COWVID-19 检测呈阳性。暂时这个农场的其他奶牛以及其他农场的所有奶牛都还没有染上疾病。
2025-07-01 08:36:26
907
原创 打卡信奥刷题(1599)用C++实现信奥 P7128 「RdOI R1」序列(sequence)
题目摘要:给定一个1到q的排列序列x,每次操作可以交换x_i与x_{2i}或x_{2i+1}(若存在)。要求通过一系列交换将序列变为升序排列,并输出操作步骤。数据范围q≤131071,操作次数不超过2q*⌈log₂q⌉。样例演示了如何通过交换相邻层节点来排序。解决方案采用自底向上调整策略,通过记录元素位置并沿路径交换来实现排序。
2025-07-01 07:13:26
872
原创 打卡信奥刷题(1598)用C++实现信奥 P7094 [yLOI2020] 金陵谣
摘要:题目P7094 [yLOI2020]金陵谣要求解决一个数学问题,给定四个正整数a,b,c,d,计算满足方程a/x + b/c = d/y的正整数解(x,y)的数量。题目包含多组测试数据,每组数据输出解对数。样例展示了当a=1,b=1,c=3,d=2时有3组解。数据范围限制各参数不超过1e6,总测试点20个。提供的C++代码通过枚举y值并检查条件来求解。该问题结合了数学与编程,适合算法竞赛训练。
2025-06-30 16:37:04
680
原创 打卡信奥刷题(1597)用C++实现信奥 P7076 [CSP-S2020] 动物园
题目描述动物园动物编号为0~2^k-1,饲养了n种。m条饲料购买规则要求:若某动物编号的p_j位为1则必须买q_j种饲料。求在不改变当前饲料清单的情况下,还能饲养多少种动物。算法通过位运算计算必须购买饲料的二进制位,统计不受限的位数来得出答案。对于k=64且n=0的特殊情况需单独处理。样例1输入3种动物和3条规则后,输出还能饲养13种动物。代码使用位运算高效解决了该问题,时间复杂度为O(n+m)。
2025-06-30 15:23:34
977
Scratch实现第二十九届“YMO”青少年数学思维研学交流活动初选试卷 小学二年级,第15题用,及用枚举的对比
2024-05-29
用Scratch图形化工具信奥P1015 [NOIP1999 普及组] 回文数,写了一个好用的反序的积木
2024-05-27
图形化编程题:图章画图,Scratch编程实现代码-电子学会2024.3四级考试题编程题第四题
2024-05-27
图形化编程题:根据身份证号码识别是否优先选择火车下铺
2024-05-27
绘制五个分枝,每个分枝末端有5个5边型,Scratch编程实现代码-电子学会2024.3三级考试题编程题第三题
2024-05-27
图形化编程题:列表排序,Scratch编程实现代码-电子学会2024.3四级考试题编程题第一题
2024-05-27
Scratch图形化编程题:三位二进制数转换为十进制数
2024-05-27
P7071 [CSP-J2020] 优秀的拆分,题目描述 一般来说,一个正整数可以拆分成若干个正整数的和
2024-05-26
B3756 [信息与未来 2021] 幸运数字 如果一个正整数的5进制,7进制,9进制都不包括0则称之为幸运数
2024-05-26
P2666 [USACO07OCT] Bessie's Secret Pasture S
2024-06-12
202312(第15届)蓝桥杯Scratch图形化编程青少组(选拔赛-初/中级)第4题真题-变色游戏
2024-06-03
202312(第15届)蓝桥杯Scratch图形化编程青少组(选拔赛-初/中级)第5题真题-筛选数据
2024-06-02
202312(第15届)蓝桥杯Scratch图形化编程青少组(选拔赛-初/中级)第3题真题-六花阵图
2024-06-01
202312(第15届)蓝桥杯Scratch图形化编程青少组(选拔赛-初/中级)第2题真题-转动的风车素材和程序
2024-06-01
202312(第15届)蓝桥杯Scratch图形化编程青少组(选拔赛-初/中级)真题,多变太阳的程序和素材
2024-06-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人