![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯
文章平均质量分 72
葛济维的博客
总想日更博客的小白
展开
-
C 循环(线性同余方程、扩展gcd)————《信息学奥赛一本通》 , POJ
对于 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输入样例:3 3 2 163 7 2原创 2021-12-04 16:13:36 · 139 阅读 · 0 评论 -
最大比例(数论、最大公约数、辗转相减法)————第七届蓝桥杯省赛C++A/B组
最大比例X星球的某个大奖赛设了 M 级奖励。每个级别的奖金是一个正整数。并且,相邻的两个级别间的比例是个固定值。也就是说:所有级别的奖金数构成了一个等比数列。比如:16,24,36,54,其等比值为:3/2。现在,我们随机调查了一些获奖者的奖金数。请你据此推算可能的最大的等比值。输入格式第一行为数字 N ,表示接下的一行包含 N 个正整数。第二行 N 个正整数 Xi,用空格分开,每个整数表示调查到的某人的奖金数额。输出格式一个形如 A/B 的分数,要求 A、B 互质,表示可能的最大比原创 2021-12-04 11:17:14 · 437 阅读 · 0 评论 -
灵能传输(贪心)
灵能传输在游戏《星际争霸 II》中,高阶圣堂武士作为星灵的重要 AOE 单位,在游戏的中后期发挥着重要的作用,其技能”灵能风暴“可以消耗大量的灵能对一片区域内的敌军造成毁灭性的伤害。经常用于对抗人类的生化部队和虫族的刺蛇飞龙等低血量单位。你控制着 n 名高阶圣堂武士,方便起见标为 1,2,⋅⋅⋅,n。每名高阶圣堂武士需要一定的灵能来战斗,每个人有一个灵能值 ai 表示其拥有的灵能的多少(ai 非负表示这名高阶圣堂武士比在最佳状态下多余了 ai 点灵能,ai 为负则表示这名高阶圣堂武士还需要 −ai原创 2021-12-03 16:41:03 · 95 阅读 · 0 评论 -
后缀表达式(贪心)————第十届蓝桥杯省赛C++B组
后缀表达式给定 N 个加号、M 个减号以及 N+M+1 个整数 A1,A2,⋅⋅⋅,AN+M+1,小明想知道在所有由这 N 个加号、M 个减号以及 N+M+1 个整数凑出的合法的后缀表达式中,结果最大的是哪一个?请你输出这个最大的结果。例如使用 123+−,则 “23+1−” 这个后缀表达式结果是 4,是最大的。输入格式第一行包含两个整数 N 和 M。第二行包含 N+M+1 个整数 A1,A2,⋅⋅⋅,AN+M+1。输出格式输出一个整数,代表答案。数据范围0≤N,M≤105,−109≤原创 2021-11-24 17:13:43 · 253 阅读 · 1 评论 -
乘积最大(贪心)————第九届蓝桥杯省赛C++B组
1239. 乘积最大给定 N 个整数 A1,A2,…AN。请你从中选出 K 个数,使其乘积最大。请你求出最大的乘积,由于乘积可能超出整型范围,你只需输出乘积除以 1000000009 的余数。注意,如果 X<0, 我们定义 X 除以 1000000009 的余数是负(−X)除以 1000000009 的余数,即:0−((0−x)%1000000009)输入格式第一行包含两个整数 N 和 K。以下 N 行每行一个整数 Ai。输出格式输出一个整数,表示答案。数据范围1≤K≤N≤105原创 2021-11-24 10:59:28 · 627 阅读 · 1 评论 -
付账问题(贪心问题、均值不等式)————第九届蓝桥杯省赛C++A组
付账问题几个人一起出去吃饭是常有的事。但在结帐的时候,常常会出现一些争执。现在有 n 个人出去吃饭,他们总共消费了 S 元。其中第 i 个人带了 ai 元。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢?为了公平起见,我们希望在总付钱量恰好为 S 的前提下,最后每个人付的钱的标准差最小。这里我们约定,每个人支付的钱数可以是任意非负实数,即可以不是 1 分钱的整数倍。你需要输出最小的标准差是多少。标准差的介绍:标准差是多个数与它们平均数差值的平方平均数,一般原创 2021-11-23 21:42:06 · 365 阅读 · 1 评论 -
置换群问题—交换瓶子(图论、环、置换群、贪心)——第七届蓝桥杯省赛C++B组
交换瓶子有 N 个瓶子,编号 1∼N,放在架子上。比如有 5 个瓶子:2 1 3 5 4要求每次拿起 2 个瓶子,交换它们的位置。经过若干次后,使得瓶子的序号为:1 2 3 4 5对于这么简单的情况,显然,至少需要交换 22 次就可以复位。如果瓶子更多呢?你可以通过编程来解决。输入格式第一行包含一个整数 N,表示瓶子数量。第二行包含 N 个整数,表示瓶子目前的排列状况。输出格式输出一个正整数,表示至少交换多少次,才能完成排序。数据范围1≤N≤10000输入样例1:53原创 2021-11-18 23:14:25 · 371 阅读 · 0 评论 -
日志统计(滑动窗口,双指针问题)——第九届蓝桥杯省赛C++B组
日志统计小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有 N 行。其中每一行的格式是:ts id表示在 ts 时刻编号 id 的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为 D 的时间段内收到不少于 K 个赞,小明就认为这个帖子曾是”热帖”。具体来说,如果存在某个时刻 T 满足该帖在 [T,T+D) 这段时间内(注意是左闭右开区间)收到不少于 K 个赞,该帖就曾是”热帖”。给定日志,请你帮助小明统计出所有曾是”热帖”的帖子编号。原创 2021-11-18 19:45:28 · 89 阅读 · 0 评论