2022.04.09,我第一次参加蓝桥杯,我想说今年官方为了防止作弊,可谓煞费苦心,直接启用备用卷,难度直接到国赛难度。第一次参加,却让我输的那么彻底。

目录

A九进制转十进制​

B 顺子日期

C 刷题统计

D 修剪灌木

E X进制减法

F 统计子矩阵

G 积木画

H 扫雷

I 李白打酒加强版

J 砍竹子


A九进制转十进制

答案:1478

B 顺子日期

答案:4 / 14

解析:我填了4,当时我一直在想012算不算,题目说了20220123有一个顺子:123,没说是012,所以我认定它不算,那就只有20220123,20221123,20221230,20221231。注意:降序是不算顺子的。

C 刷题统计

for(50分吧)

#include <bits/stdc++.h>
#define MOD 1000000007
using namespace std;
typedef long long LL;
LL a,b,n;
int main() {int sum=0;cin>>a>>b>>n;for(LL i=1; ;i++) {if(i%7!=6 && i%7!=0) sum+=a;else sum+=b;if(sum>=n) {cout<<i;return 0;}}return 0;
}

优化(应该100)

#include <bits/stdc++.h>
#define MOD 1000000007
using namespace std;
typedef long long LL;
LL a,b,n;
int main() {cin>>a>>b>>n;LL sum=a*5+b*2;//一周的做题数LL t=n/sum;//需要t周(往下取整)LL nn=t*sum;//t周做了nn个题目if(nn>=n) cout<<t*7;else if(nn+a>=n) cout<<t*7+1;else if(nn+a*2>=n) cout<<t*7+2;else if(nn+a*3>=n) cout<<t*7+3;else if(nn+a*4>=n) cout<<t*7+4;else if(nn+a*5>=n) cout<<t*7+5;else if(nn+a*5+b>=n) cout<<t*7+6;else if(nn+a*5+b*2>=n) cout<<t*7+7;//考试时没写这句,刚刚试数据查到错的....彻底无语,大无语事件return 0;
}

D 修剪灌木

解析:我是直接用草稿纸手推出来,发现的规律,1需要特判:1。2输出2 2,3输出4 2 4,4输出6 4 4 6,5输出8 6 4 6 8……以此类推就好了,我们看到边界是最高的,然后往中间成以公差为-2递减。所以用双指针控制它即可

#include <bits/stdc++.h>
#define MOD 1000000007
using namespace std;
typedef long long LL;
int a[10005];
int n;
int main() {cin>>n;if(n==1) {cout<<1;return 0;}int s=(n-1)*2;int l=1,r=n;while(l<=r) {a[l]=a[r]=s;l++,r--;s-=2;}for(int i=1; i<=n; i++)cout<<a[i]<<endl;return 0;
}

E X进制减法

我在考场上看到好多人卡这题,主要是读不懂题,出考场时有很多人问我321怎么等于65,题目说了三个位的进制分别是8 10 2(从左到右),所以就是3 * 20 + 2 * 2 + 1 = 65,看不懂的小伙伴可以回去好好复习一下二进制或者往下看。

解析:

321的“1”是2进制,逢2进1,即“2”就意味着数字4=2*2,“2”的进制是10进制,逢10进1,也就是说对于“2”来说,“3”代表着30,而对于“1”来说“3”则代表着60=30*2。通俗的说,假如321整个树是10进制,那么对于“2”而言“3”是30,对于“1”而言,“3”是300=3*10*10.

然后,这里的最高位进制是没用的,相当于摆设。由于它说a b同一条进制系统,所以数位的进制应该是一样的,那么我们就需要一个s数组来存放当前数位应该*哪个数了

#include <bits/stdc++.h>
#define MOD 1000000007
using namespace std;
typedef long long LL;
int n,ma,mb;
LL sum,s1,s2,a[100015],b[100015],s[100015];
int main() {cin>>n;cin>>ma;for(int i=1; i<=ma; i++)cin>>a[i];cin>>mb;for(int i=ma-mb+1; i<=ma; i++)//B<=Acin>>b[i];s[ma]=1,s[ma-1]=2;//最低位固定二进制,即*1,那么前一位就*2for(int i=ma-2; i>0; i--) {s[i]=(max(a[i+1],b[i+1])+1)%MOD;//贪心,数位上的两个数取大的+1即为当前数位的进制(这里直接存放当前数位转成10进制该*的数)s[i]=(s[i]%MOD)*(s[i+1]%MOD);//取模防爆}for(int i=1; i<=ma; i++) {s1=(s1+(s[i]%MOD)*(a[i]%MOD))%MOD;//累加s2=(s2+(s[i]%MOD)*(b[i]%MOD))%MOD;}cout<<(s1-s2)%MOD;return 0;
}

F 统计子矩阵

二维前缀和,不会。。。

G 积木画

听他们说这道题在洛谷有原题,而且是用dp做,完全和他们不一样,我用斐波那契做的

解析:

这题我依旧是手推找规律。

n为1时是1 = 1 + 0 * 2;

n为2时是2 = 2 + 0 * 2;

n为3时是5 = 3 + 1 * 2;

n为4时是9 = 5 + 2 * 2;

n为5时是18 = 8 + 5 * 2;

n为6时是35 = 13 + 12 * 2;

n为7时是67 = 21 + 23 * 2;以此类推

我们发现前面的(只有I形)是斐波那契数列,后面的(有L和I型)是一个有规律的数列吧,我也不知道啥数列:2 + 3 = 5,5 + 6 = 11,11 + 12 = 23

我也不知道对不对,没管后面了,直接编程交了,然后看了一下洛谷的,发现错了。

        代码就不给了,这个是错误思路,正解请移步洛谷P1990

H 扫雷

 这个我好像用两个for,不知道能不能骗分,听一个小伙伴说是0分,那太好了,又错了.......

I 李白打酒加强版

dfs能骗分,考的时候没想出来

J 砍竹子

不会....

这次顶死40分,没省二咯,该退役咯~~~

2022年蓝桥杯省赛真题解析(C++B组)相关推荐

  1. ②【Java 组】蓝桥杯省赛真题解析 [振兴中华] [三部排序] 持续更新中...

    个人简介:Java领域新星创作者:阿里云技术博主.星级博主.专家博主:正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 蓝桥杯真题--持续更新中... ...

  2. 2018第九届蓝桥杯省赛真题 C语言B组 第一题

    标题:第几天 2000年的1月1日,是那一年的第1天. 那么,2000年的5月4日,是那一年的第几天? 注意:需要提交的是一个整数,不要填写任何多余内容. 答案:125 可以被四百整除,所以是闰年,二 ...

  3. 【蓝桥杯国赛真题08】python约分 蓝桥杯青少年组python编程 蓝桥杯国赛真题解析

    目录 python约分 一.题目要求 1.编程实现 2.评分标准 二.解题思路 1.案例分析

  4. 【蓝桥杯国赛真题05】python读数系统 蓝桥杯青少年组python编程 蓝桥杯国赛真题解析

    目录 python读数系统 一.题目要求 1.编程实现 2.输入输出 3.评分标准

  5. 【蓝桥杯国赛真题06】python绘制菱形圆环 蓝桥杯青少年组python编程 蓝桥杯国赛真题解析

    目录 python绘制菱形圆环 一.题目要求 1.编程实现 2.评分标准

  6. 3位水仙花数计算pythonoj_Python解答蓝桥杯省赛真题之从入门到真题

    若发现此文章消失,则是在等待审核中,稍等一会儿即可显示,谢谢. 另外,我会尽量晚上上传更新题目. 此文章太长了,导致MD编辑器很卡,另写了一篇接续 传送门 Python解答蓝桥杯省赛真题之从入门到真题 ...

  7. 第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一!!!)

    第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一) 文章目录 第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一)

  8. 2017年第四八届C/C++ B组蓝桥杯省赛真题

    2017年第八届C/C++ B组蓝桥杯省赛真题 真题 第一题:购物单 第二题:等差素数列 第三题:承压计算 第四题:方格分割 第五题:取数位 第六题:最大公共子串 第七题:日期问题 第八题:包子凑数 ...

  9. 2018年第九届C/C++ A组蓝桥杯省赛真题(python解法)

    2018年第九届C/C++ A组蓝桥杯省赛真题 第一题:哪天返回 题目描述 小明被不明势力劫持.后莫名其妙被扔到x星站再无问津.小明得知每天都有飞船飞往地球,但需要108元的船票,而他却身无分文. 他 ...

最新文章

  1. “干掉” Date,Java8 LocalDate 真香!
  2. vue 时间安排表
  3. socket可以写成单例嘛_精读《设计模式 - Singleton 单例模式》
  4. 【组合数学】排列组合 ( 集合排列、分步处理示例 )
  5. python函数高级运用
  6. linux中的umask命令
  7. C#数据类型转换—使用Convert类转换
  8. 分享几个亲测有效的高效工作技巧
  9. 一壶 100℃ 的开水从多高倒进嘴里不会觉得烫?
  10. AutoLayout--masonry使用
  11. 19-6/28作业:100以内偶数求和
  12. AI赋能DevOps:数据驱动的全栈工程师实践
  13. 百度android定位 602 key mcode不匹配,我的Android进阶之旅------百度地图学习:BDLocation.getLocType ( )值分析...
  14. ./configure,make,make install 的作用
  15. 学习笔记 第六周 第一篇
  16. Zotero及部分常用插件安装和使用教程
  17. Riemann问题精确解及程序实现
  18. js如何复制一个对象?
  19. c语言怎么加中文注释,谁能对我的C语言程序作出中文注释
  20. webservice 常用接口

热门文章

  1. 量化投资学习——orderbook数据分析
  2. 再议特斯拉“降价”,性价比还是不行!
  3. 心理学转到计算机的女科学家,从局外人到局中人心理学研究理念演变.doc
  4. 润物细无声之千分之一
  5. 我的大学六年——郭天祥
  6. 大学学习的期望与目标
  7. 「带队伍」的关键是什么?
  8. 对极限编程四个核心的理解
  9. Win32游戏制作之---五子棋的简单设计
  10. Linux Shell中判断进程是否存在的代码