蓝桥杯学习记录

今年蓝桥杯定在4月9号省赛,自己今天看了b站上的2017年的b组c的真题讲解,感觉自己对算法一无所知,自己必须要加强算法学习了。4道结果填空题2道代码填空题4道编程大题。

第一题 购物单

简单,excel就能计算,在不能直接手算;

第二题 等差素数列

用到了c++ lower_bound();函数,容器 set<int> all; all.insert(); all.found;把需要查找的数放入容器中去,用容器函数来查找。用到算法暴力枚举1枚举首项2枚举公差3枚举个数;就是三重枚举。

第三题 方格分割

算法dfs搜索,重点不是直接搜索,而是转变思维搜索,还是以某个角作为原点建立二维坐标,但是搜索起点改为中间,并且是对称搜索,以中心点为对称点。每当走到边界结果记录。其中对搜索越界的判断很重要。

dire[][2]={//方向数组
            {-1,0},
            {1,0},
            {0,-1},
            {0,1},
                    };

vis[][]//访问数组

第四题 取位数

题不是很难,但是有细节问题,需要根据题目判断是从左到右取还是从右到左取,‘/10’取高位

‘%10’取低位。 用到了递归。

int len(int x){
    if(x<10) return 1;
    return len(x/10)+1;
}

第五题 最大公共字串

dp问题 好题

第六题 日期问题

题目思路简单,细节较多,需要注意,日期问题几乎快成了蓝桥杯必考题了。题目中涉及了字符串处理问题;输入提取数值问题;定义 string 类型作为输入,后当做数组使用取出各个数,需要舍弃不如数据中的“/”,当成数组直接跳过“/”的那一位即可。在把单个字符数字转换为两位数字,字符变为数字减字符0在乘10加起来。 还涉及 到非法判段,闰年判断 2月天数的不同。

i 2 s函数非常好用

bool isleap(int year){//闰年判断 
	return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
#include <sstream>//stringstream必备头文件 
void i2s(int i; string &s){//整数转字符int--->string 
	stringstream ss;
	ss << i;
	ss >> s;
}

第7题 不定方程 

比较难 没听

第8题 K倍区间

前缀和、树状Arruy、区间数;暴力的话必须优化 就是枚举优化 采用二分法优化

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值