
蓝桥杯
文章平均质量分 56
幻想乡的漏气威严
是个车万狗,还是个码农,还是个死宅,没救了没救了
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++实现 蓝桥杯 后缀表达式
题目描述简单来说给你一串数字,这串数字可以是负数,n个加号和m个减号,问你怎么搭配能得到最大的值解题思路前略: 这题在我搞清楚前我觉得有点难的,然后我看了很多题解然后弄明白后发现是真的简单...再说之前我们必须要先明确一件事 后缀表达式是可以带括号的 即一般的后缀表达式23+1-其实是((2+3)-1)简单来说题目有两种情况没有负号的情况这个情况最简单,直接全部加起来就行了有负号的情况这个时候我们需要想想,给你一串数字,怎么减才能得到最大的值呢?很简单,就是 {大的值} - {小的值}原创 2020-10-11 15:20:24 · 670 阅读 · 1 评论 -
C++实现 蓝桥杯 剪邮票
题目有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)请你计算,一共有多少种不同的剪取方法。我的思路其实一开始看这题的时候我理所当然的认为这题用dfs搜的完事了,写好代码往上就往上提交了,然后就错了然后我就发现事情没那么简单,因为邮票的图形可以是这样的这样用搜索可搜不出来,所以我转变思路,可以先找出5个小邮票,如果能拼成一个大的邮票,则答案加1.于是代码就出来了,其他说明我都放在代码上了(#include <iostream>#原创 2020-10-07 14:23:24 · 514 阅读 · 0 评论 -
C++实现 蓝桥杯 k倍区间
这里是题目链接k倍区间题目大意简单来说,给你一个数组和一个数k,让你满足数组中连续区间和为k的倍数的区间有几个思路看到题目的连续区间的时候,就知道这题使用前缀和来写的,然后我喜闻乐见的TLE了 ,咳咳,看了题目100000组数据,那n2数据妥妥的过不了了,只能是看看怎么画了,于是想到一个定理,(A+B)mod k = A mod k + B mod k。 (A-B)mod k= A mod k - B mod k这样就有思路了为了说明方便,我们设这个数组有{1,2,3,4,5},k为2首先原创 2020-10-04 15:03:14 · 909 阅读 · 0 评论 -
C++实现 蓝桥杯 油漆面积
这里是原题链接油漆面积这题其实非常简单的,但是我发现怎么做都会报错,结果查了下才知道有两个坑1.作为判断用的数组不能用int,不然会报内存超限制错误2.第一组数据是有误的,需要改下,具体看代码#include <iostream>#include <cstring>using namespace std;const int MAX = 10000+5;bool g[MAX][MAX];int main() { memset(g,0,sizeof(g));原创 2020-10-03 14:11:35 · 410 阅读 · 1 评论 -
C++实现 蓝桥杯包子凑数
这里是原题链接包子凑数解题思路1.如果所有包子的最大公约数不为1的时候,不能凑出的数有无限多个2.如果最大公约数为1,则对于互素的两个数p,q,px+qy不能凑出的最大值为pq-p-q,这样知道不能凑出的最大值,接下来就是在一个范围内找不能凑出的数了,就成了最大背包问题了#include <iostream>using namespace std;const int MAXN = 100+5;const int MAXV = 10000+5;int a[MAXN],n,dp[原创 2020-10-02 14:08:16 · 579 阅读 · 0 评论 -
C++实现 蓝桥杯的正则问题
这里是原题链接正则问题这个问题简单来说就是让你算x的最大的个数,对于这种表达式的题目(我觉得都很像),要么用stack来写,要么用递归。#include <iostream>#include <algorithm>using namespace std;int dfs(){ char ch; int ans=0,cnt=0;//cnt是当前x的数目 while(1){ ch=getchar(); if(ch=='('){ cnt+=dfs();原创 2020-10-02 12:53:25 · 192 阅读 · 0 评论