蓝桥杯赛前自救攻略,备赛抱佛脚指南

这篇具有很好参考价值的文章主要介绍了蓝桥杯赛前自救攻略,备赛抱佛脚指南。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

明天就要开始蓝桥杯了,然鹅还什么都没准备,就挺秃然的,凉凉但是还是要抱一下佛脚。这里分享一下上届蓝桥杯C++组混子选手的赛前自救笔记!以下是chatGPT的回答

蓝桥杯是国内最具影响力的计算机比赛之一,参赛选手要面对各种难度的编程题目。以下是蓝桥杯比赛前一天备赛的建议:

复习考试范围:蓝桥杯比赛有不同的组别和考试科目,请认真阅读比赛规则和考试范围,并适当调整复习计划。

解决模拟试题:尝试做一些类似于蓝桥杯的模拟试题,这些试题可以帮助您熟悉比赛的形式和难度,提高解题能力。

休息和放松:在比赛前一天,保持良好的身体状态非常重要。请注意充足的睡眠、饮食和运动,并避免过度紧张和焦虑。

熟悉编程环境:请熟悉自己常用的编程语言和开发环境,并进行必要的配置和测试,以确保在比赛时顺利运行程序。

增强信心和决心:蓝桥杯比赛需要很强的耐心和决心,因此在比赛前一天加强自我调整和心理暗示,提高自信和决心。

最后,祝愿所有参加蓝桥杯比赛的选手能够发挥出自己最好的水平,取得优异的成绩!


说的真好,但是我就偏不这么做,以下为个人备战分享经验:

  1. 首先,打编程比赛连语言都不会你打个得er啊,肯定是得去复习语言啊!对于C++选手来说的话就是STL
  2. 其次,各种宝典啊什么手册啊都不如你直接去看官网划的考试范围,然后把每个类型的找例题复习复习知识点。
  3. 最后,直接真题从最新往前推,能推多少是多少,这样一来把编程环境也熟悉了,剩下的看造化了。佛祖保佑!

一、复习语言知识

打编程比赛连语言都不会你打个得er啊,首先肯定是得去复习语言啊!对于C++选手来说的话就是STL

1、代码起手框架

#include <bits/stdc++.h>
using namespace std;
int main(){
	return 0;
}

2、vector初始化

vector<vector<int>> matrix(M,vector<int>(N,data)); //初始化为m行,n列,data值
vector<vector<int>> matrix2{ {1},{1,1} };//大括号初始化二维数组
vector<vector<vector<int>>> cube(5, vector<vector<int>>(3, vector<int>(2, 0)));//三维容器初始化为长宽高:2*3*5

int main(){ 	// 行列不固定初始化二维数组
    vector<vector<int>> matrix;//行,列数不固定
    cout << "please input rows of matrix: " << endl;
    int rows;
    cin >> rows;
    matrix.resize(rows);
    int col;
    vector<int> temp;
    for (int i = 0; i < rows; i++) {
        cout << "please input the cols of " << i << "th row" << endl;
        cin >> col;//确定第i行的列数
        cout << i << "th row has " << col << " cols," << "please input these" << endl;
        for (int j = 0; j < col; j++){
            int data;
            cin >> data;
            temp.push_back(data);
        }
        matrix[i] = temp;
        temp.clear();
    }

    cout << "output matrix:" << endl;
    for (int i = 0; i < matrix.size(); i++) {
        for (int j = 0; j < matrix[i].size(); j++) {
            cout << matrix[i][j] << " ";
        }
        cout << endl;
    }
    cout << endl;
    return 0;
}
  • 如果题目在返回空的二维vector时,返回的是 [],这是我们程序中对应用{};
  • 如果题目在返回空的二维vector时,返回的是 [[]],这是我们程序中对应用{{}};

2、unordered_map

#include <iostream>  
#include <unordered_map>  
#include <map>
#include <string>  
using namespace std;  
int main()  
{  
	//注意:C++11才开始支持括号初始化
    unordered_map<int, string> myMap={{ 5, "张大" },{ 6, "李五" }};//使用{}赋值
    myMap[2] = "李四";  //使用[ ]进行单个插入,若已存在键值2,则赋值修改,若无则插入。
    myMap.insert(pair<int, string>(3, "陈二"));//使用insert和pair插入
  
	//遍历输出+迭代器的使用
    auto iter = myMap.begin();//auto自动识别为迭代器类型unordered_map<int,string>::iterator
    while (iter!= myMap.end())
    {  
        cout << iter->first << "," << iter->second << endl;  
        ++iter;  
    }  
	
	//查找元素并输出+迭代器的使用
    auto iterator = myMap.find(2);//find()返回一个指向2的迭代器
    if (iterator != myMap.end())
	    cout << endl<< iterator->first << "," << iterator->second << endl;  
    return 0;  
}  

3、输入输出问题

vector<int> ratings;
int x;
while(cin>>x){
	ratings.push_back(x);
	if(cin.get()=='\n') break;
}

二、复习考试范围知识

各种宝典啊什么手册啊都不如你直接去看官网划的考试范围,然后把每个类型的找例题复习复习知识点。

  • 计算机算法:

    枚举、排序、搜索、计数、贪心、动态规划、图论、数论、博弈论、概率论、计算几何、字符串算法等。

  • 数据结构:

    数组、对象/结构、字符串、队列、栈、树、图、堆、平衡树/线段树、复杂数据结构*、嵌套数据结构*等。

1、深度优先搜索(Depth-First-Search)模板

void dfs()//参数用来表示状态  
{  
    if(到达终点状态)  
    {  
        ...//根据需求添加  
        return;  
    }  
    if(越界或者是不合法状态)  
        return;  
    if(特殊状态)//剪枝,去除一些不需要访问的场景,不一定i俺家
        return ;
    for(扩展方式)  
    {  
        if(扩展方式所达到状态合法)  
        {  
            修改操作;//根据题意来添加  
            标记;  
            dfs();  
            (还原标记)//是否还原标记根据题意  
            //如果加上(还原标记)就是 回溯法  
        }  
    }  
}

2、随机字符、数字

	srand((unsigned int )time(0));
	rand()%100+1;//1-100

	char f[52];
    strcpy( f, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
    srand((unsigned)time(0));
	f[rand()%52];//随机字符 

三、复习比赛真题

直接真题从最新往前推,能推多少是多少,这样一来把编程环境也熟悉了,剩下的看造化了。佛祖保佑!

1、模拟题

小明的彩灯
题目描述
小明拥有 N个彩灯,第 i个彩灯的初始亮度为 ai。
小明将进行 Q 次操作,每次操作可选择一段区间,并使区间内彩灯的亮度 +x(x 可能为负数)。
求 Q次操作后每个彩灯的亮度(若彩灯亮度为负数则输出 0)。

输入描述
第一行包含两个正整数 N,Q分别表示彩灯的数量和操作的次数。
第二行包含 N个整数,表示彩灯的初始亮度。
接下来 Q行每行包含一个操作,格式如下:
l r x,表示将区间 l∼r 的彩灯的亮度 +x。
​​
输出描述
输出共 1行,包含 N个整数,表示每个彩灯的亮度。

例:
输入
5 3
2 2 2 1 5
1 3 3
4 5 5
1 1 -100
输出
0 5 5 6 10

题解代码
解1:普通的模拟思维

#include<iostream>

using namespace std;

int main(){
        int N,Q; //N个彩灯,Q次操作 
        cin>>N>>Q;
        long long a[N];//第i个灯的亮度a_i 
        for (int i = 0;i < N;i++){
                cin>>a[i];
        } 
        long long l, r, x;//l-r的区间亮度+x 
        for (int i = 1;i <= Q;i++){//进行模拟操作 
                cin>>l>>r>>x;
                for(int j = l; j <= r; j++){
                        a[j-1] += x;
                }
        } 
        
        for (int i = 0;i < N;i++){//按题目要求输出 
                if (a[i] < 0) 
                        cout<<'0'<<" ";
                else 
                        cout<<a[i]<<" ";
        } 
        cout<<endl;
        return 0;
}       

解2:利用差分数组求解
c ++蓝桥杯考前,蓝桥杯,c++,算法,数据结构,动态规划
虽然我承认这个思路确实很妙,而且重要的是学习差分数组以及前缀和的思维,但是不如我解法1来的简单粗暴(嘴硬.jpg)

#include<iostream>

using namespace std;

typedef long long ll;
int main(){
        ll N,Q; //N个彩灯,Q次操作 
        cin >> N >> Q;
        ll a[N+1], b[N+1];//第i个灯的亮度a[i-1],b[n]为差分数组 
        a[0] = 0;        b[0] = 0;
        for (int i = 1; i <= N;i++){
                cin >> a[i];
        } 
        for (int i = 1; i <= N;i++){ //构建差分数组 
                b[i] = a[i] - a[i-1];
        }  
        while(Q--){ //模拟操作q次
                int l, r, x;//l-r的区间亮度+x 
                cin >> l >> r >> x;
                b[l] += x;
                b[r + 1] -= x;                
        } 
        for(int i = 1 ; i <= N ; i ++) //计算前缀和,把差分数组b还原成操作q次后的a数组状态 
                b[i] += b[i - 1];
        for(int i = 1 ; i <= N ; i ++) 
                cout << max(b[i] , 0ll) << " ";//按题目要求输出 
        
        return 0;
}

2、动态规划题

可曾听闻蓝桥杯又称动态规划杯?这个是重中之中,可以看看我这篇文章:
简单三步法解决动态规划问题

大数相乘问题
数值溢出问题
输出格式问题
日期题可以直接excel

四、其他

先写到这儿吧,稍后边想到啥边补充吧!

参考文章如下,侵必删:文章来源地址https://www.toymoban.com/news/detail-785060.html

  • https://blog.csdn.net/qq_40838478/article/details/114664223

到了这里,关于蓝桥杯赛前自救攻略,备赛抱佛脚指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 蓝桥备赛——矩阵读入

    如上图所示,是一道有关二维前缀和的问题,因为涉及到二维,肯定就是以矩阵的形式进行读入的。 为此,针对矩阵的读入形式进行总结,可以大致总结出两种类型如下:  可以看到上面代码的 表示的是对于第一个[ ]中的元素是生成一个行向量,对于外面的第二个[ ]表示的

    2024年04月08日
    浏览(42)
  • 【蓝桥备赛】求阶乘

    求阶乘 之前做过计算阶乘结果后面有几个 0 的题目,这里看到本题之后,很快就有思路了。想要得到阶乘结果有几个0,首先尾数后面的0,最小肯定是因为因子中存在10。然后,10如何得来呢? 2 * 5 = 10。 在计算阶乘的过程中,以 1~5 为例,有三个因子2(2、4),一个因子5,所

    2024年01月21日
    浏览(38)
  • unity接入mqtt自救指南

    1.环境准备 HslCommunication.dll (版本:11.5.3.0) Newtonsoft.Json.dll (版本 13.0.1.25517) dll自取 2.client相关 3.server相关 server 我使用的是 mosquitto  mqtt server 自取 参数说明 启动服务器 (我在这里使用cmd 调用会报错 后来使用 powershell.exe 调用命令并未报错) 服务器配置 mosquitto.conf配置文件,1、

    2024年02月04日
    浏览(37)
  • 【蓝桥备赛】矩形总面积——计算几何

    矩形总面积 根据题意,两个矩形如果存在重叠部分,只会是这三种其一。不过再仔细观察这些边的关系,容易得到以下计算重叠区域大小的方法。 那么,这道题的解法就是,计算两个矩形的面积再减去重复部分(如果有重复部分的话) 看完下方的代码,可能有人奇怪为什么

    2024年01月24日
    浏览(49)
  • 蓝桥杯备赛|成绩统计|排列字母|纸张尺寸

    目录   1 成绩统计 题目描述 输入描述 输出描述 输入输出样例 示例 1.1 解题思路 1.2 AC_Code Python 标程 2 排列字母 问题描述 2.1 解题思路 2.2 AC_Code Python 标程 3 纸张尺寸 问题描述 输入格式 输出格式 样例输入1 样例输出1 样例输入 2 样例输出 2 运行限制 3.1 解题思路 3.2 AC_Code P

    2023年04月09日
    浏览(44)
  • 蓝桥杯国赛备赛(嵌入式组)

    引脚控制 PA3 :RCLK 串型存储时钟输入 (上升沿有效) PA2 :SCK 串行移位时钟输入(上升沿有效) PA1 :SER 串型数据输入 发送数据时先发高位:因为会通过移位寄存器将他移到最后一个位置。 1、程序设计 (1)拓展板跳线帽连接(如下图) (2)配置PA1、PA2、PA3为推挽输出 (3)

    2024年02月07日
    浏览(44)
  • 蓝桥杯备赛(Day5)——二叉树

    普通做法,二叉树一个节点包括结点的数值以及指向左右子节点的指针 在class Node中 在竞赛中,我们往往使用静态数组实现二叉树,定义一个大小为N的静态结构体数组,使用其来存储一棵二叉树。 使用静态数组时,对应的tree假如不是满二叉树,则应该使用-1或者0填补空缺,

    2024年02月09日
    浏览(48)
  • 《Java面试自救指南》(专题二)计算机网络

    标题 链接 中科大郑烇、杨坚全套《计算机网络(自顶向下方法 第7版)》课程 视频链接 常规回答 GET在浏览器 回退 时是无害的,而POST会再次提交请求。 GET产生的URL地址可以被 Bookmark ,而POST不可以。 GET请求会被浏览器 主动cache ,而POST不会,除非手动设置。 GET请求只能进

    2024年04月09日
    浏览(38)
  • 【AcWing】蓝桥杯备赛-深度优先搜索-dfs(1)

    目录 写在前面: 题目:92. 递归实现指数型枚举 - AcWing题库 读题: 输入格式: 输出格式: 数据范围: 输入样例: 输出样例: 解题思路: 代码: AC !!!!!!!!!! 写在最后: 距离蓝桥杯已经不足一个月了, 根据江湖上的传言, 蓝桥杯最喜欢考的是深度优先搜索和

    2024年02月03日
    浏览(56)
  • 蓝桥杯备赛 | 洛谷做题打卡day4

    高精度加法,相当于 a+b problem, 不用考虑负数 。 分两行输入。 a , b ≤ 1 0 500 a,b leq 10^{500} a , b ≤ 1 0 500 。 输出只有一行,代表 a + b a+b a + b 的值。 样例输入 #1 样例输出 #1 样例输入 #2 样例输出 #2 学会利用新知,自己多试试并尝试积攒一些固定解答方案,debug,以下是我的

    2024年01月17日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包