【计蒜客-算法】蓝桥杯介绍

这篇具有很好参考价值的文章主要介绍了【计蒜客-算法】蓝桥杯介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、蓝桥杯介绍

蓝桥杯是工信部组织的一项面向在校大学生的程序设计竟赛,分为软件组和电子组。

其中,软件组分为 C/C++组和 Java组,电子组分为嵌入式组和单片机组。

二、蓝桥杯赛制

竞赛分为两个阶段:初赛(省赛) 和决赛。初赛时长4个小时,一共两个方向共计6个组别同时比赛。决赛时长也为4小时,分为上午和下午两个场次。

竞赛形式为个人赛,每个人一台电脑,全程使用电脑进行答题,不能访问互联网,也不能使用 USB 等电子设备,只能访问所在考场的局域网。但是可以使用电脑的所有功能:excel、ppt、记事本、计算器。

在比赛期间会通过局域网将试题发放到你的电脑里,你需要完成题目并通过网络提交答案。

每场比赛的题型有三类:结果填空题、代码填空题和编程大题。所有题目都是客观题,以选手提交答案的评测结果为评分依据。

判题过程几乎都由机器完成,只有编程大题会有少量的人工参与(需要对代码风格和可读性进行评判,只占题目里很少的分数)。

三、题目类型

1、结果填空题

结果填空题是一类具有确定解的问题,要求你填入正确的答案。

无须写出解题过程,不限定计算的过程,你可以通过编程、在纸上计算、甚至用excel 和 Windows 自带的计算器算出答案,只要最终答案正确就能得到满分,否则得0分。

答案确保唯一性,如果你填入的格式和比赛要求的不一样也会被判为0分。

2、代码填空题

代码填空题描述了一个具有确定解的题目,并给出了该问题的某一解法的代码,其中会空缺一部分,需要读懂代码的逻辑,并对其中的空缺部分补充代码,使整段代码完整。

可能有多种正确答案,比如p[i]*(p+i),只要填入的代码是正确的,验证程序都会认为答案正确。

3、编程大题

编程大题具有一定难度梯度、分值不等的编程题目。这些题目的要求明确、答案客观。**程序必须使用标准输入、标准输出(cin、cout、scanf、printf),以便于机器评卷时重定向。**不要输出没有要求的、多余的内容,例如:“请您输入xx数据:”

判题规则:将标准输入和输出重定向到文件,用文件输入并输出到文件中,将输出文件与标准答案进行文本比对

要求选手通过编程,对给定的标准输入求解,并通过标准输出,按题目要求的格式输出解。题目一般会给出示例数据。

题目的考察点一般集中于对算法的设计和逻辑的组织上。理论上,选手不可能通过猜测或其它非编程的手段获得问题的解。选手给出的解法应具有普遍性,不能只适用于题目的示例数据(当然,至少应该适用于题目的示例数据)。

为了测试选手给出解法的性能,评分时用的测试用例可能包含大数据量的压力测试用例,选手选择算法时要尽可能考虑可行性的问题。

四、注意事项

1、c/c++

主函数结尾必须return 0

代码中允许使用 STL类库。

所有依赖的函数必须明确地在源文件中 #include <xxx>,不能通过工程设置而省略常用头文件。

万能头文件:<bits/stdc++.h>

所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。提交时,注意选择所期望的编译器类型。

2、Java

不要使用 package 语句。

主类名必须为:Main

五、复杂度

算法的复杂度是评估算法性能优劣一个重要的指标,可以帮助估算出算法在执行之后所需要的时间和空间,所以分析算法的复杂度几乎成了每个选手必须掌握的能力。

在竞赛中,我们认为计算机一秒能执行 5 ∗ 1 0 8 5*10^8 5108次计算,如果题目给出的时间限制为1s,那么你选择的算法执行的计算次数最多应该在 1 0 8 10^8 108 量级才有可能解决这个题目。

时间复杂度 数据范围
O(n) n ≤ 10^8
O(nlogn) n ≤ 10^6
O(n√n) n ≤ 10^5
O(n^2) n ≤ 5000
O(n^3) n ≤ 300
O(2^n) n ≤ 25
O(n!) n ≤ 11

六、代码

1、循环节长度

/**
 * 循环节长度
 * @author  王铭颢
 * @Date  2022/11/20 13:37
 */

/*
 * 除法是在余数后面不断补零的过程直到除尽
 * 而小数就是余数除以除数产生的,所以小数位的循环等价于余数的循环
 * (理论上最长的循环节的长度=分母的大小-1)
 *
 * 这里为什么用余数来判断呢?
 * -- 因为小数可能会出现数字重复但不是循环节的情况,而当余数一样的时候,
 * -- 其操作仍是余数除以除数,所以可以判断是已经进入循环的!!!
 */

#include "iostream"
#include "vector"
#include "algorithm"

using namespace std;

int f(int n, int m) {
    n = n % m;
    vector<int> v;
    for (;;) {
        v.push_back(n);
        n *= 10;
        n = n % m;
        if (n == 0) return 0;
        if (find(v.begin(), v.end(), n) != v.end())
        // find(...)查找失败返回end()迭代器
        {
            return (int) (v.end() - find(v.begin(), v.end(), n));
        }
    }
}

int main() {
    int m, n;
    cin >> n >> m;
    cout << f(n, m) << endl;
    return 0;
}

2、最大公约数

辗转相除法法:两数相除,取余数重复进行相除,直到余数为0时,前一个除数即为最大公约数文章来源地址https://www.toymoban.com/news/detail-754697.html

/**
 * 最大公约数
 * @author  王铭颢
 * @Date  2022/11/20 14:45
 */

#include "iostream"

using namespace std;

int gcd(int x, int y) {
    return y ? gcd(y, x % y) : x;
}

int main() {
    int a, b;
    cin >> a >> b;
    cout << gcd(a, b) << endl;
    return 0;
}

到了这里,关于【计蒜客-算法】蓝桥杯介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 1014蓝桥算法双周赛,学习算法技巧,助力蓝桥杯

    家人们,我来免费给大家送福利了!!! 【1014蓝桥算法双周赛 】 蓝桥杯全国软件和信息技术专业人才大赛是由工业和信息化部人才交流中心举办的全国性IT学科赛事。参赛高校超过1200余所,累计参赛人数超过40万人。该赛事连续两年被列入中国高等教育学会发布的“全国普

    2024年02月08日
    浏览(41)
  • 蓝桥杯嵌入式STM32G431RBT6的学习(总大纲)(HAL库学习)板子介绍

    我写蓝桥杯嵌入式大概用到的外设,都是非常常用的。我在这里汇总一下。 蓝桥杯嵌入式基础模块——GPIO的使用(新板)STM32G431(HAL库开发)_薛定谔的猫咪死了的博客-CSDN博客 蓝桥杯嵌入式基础模块——串口的使用(新板)STM32G431(HAL库开发)_薛定谔的猫咪死了的博客-C

    2024年02月02日
    浏览(50)
  • 关于参加大学生挑战杯赛的心得体会

    CSDN话题挑战赛第1期 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f 参赛话题:大学生竞赛指南 话题描述:本话题聚焦于大学生竞赛心得体会分享,对于计算机众多领域每年都有很多都会举办科技竞赛,很多学生也都会踊跃参与,每到竞赛结束,学生们都会收

    2024年02月06日
    浏览(42)
  • 图像分类传统算法和深度学习算法简单介绍

    图像分类是计算机视觉领域的一项基本任务,旨在根据输入图像将其预测到一个或多个类别中。本文档将详细介绍一些常用的图像分类算法,包括传统方法和深度学习方法。 在深度学习技术兴起之前,计算机视觉领域的研究者们使用传统的机器学习方法来进行图像分类。这些

    2024年02月16日
    浏览(44)
  • 【机器学习】KNN 算法介绍

    KNN 算法,或者称 k-最近邻算法,是 有监督学习 中的 分类算法 。它可以用于分类或回归问题,但它通常用作分类算法。 KNN 的全称是 K Nearest Neighbors,意思是 K 个最近的邻居。该算法用 K 个最近邻来干什么呢?其实,KNN 的原理就是:当预测一个新样本的类别时, 根据它距离

    2023年04月24日
    浏览(84)
  • 机器学习算法原理:详细介绍各种机器学习算法的原理、优缺点和适用场景

    目录 引言 二、线性回归 三、逻辑回归 四、支持向量机 五、决策树

    2024年02月02日
    浏览(48)
  • 动手学区块链学习笔记(一):加密算法介绍

    本文根据实验楼以及自己查询到的一些资料(文末给出),模拟了一下区块链从诞生到交易的整个过程,也算是弥补了一下之前区块链的一些缺失知识。 什么是比特币? 比特币是一种加密货币,也是一种分布式数字货币。它的创建者使用匿名身份被称为\\\"中本聪\\\"。比特币是通

    2024年02月13日
    浏览(38)
  • 机器学习笔记之优化算法(十)梯度下降法铺垫:总体介绍

    从本节开始,将介绍 梯度下降法 ( Gradient Descent,GD ) (text{Gradient Descent,GD}) ( Gradient Descent,GD ) 。 线搜索方法作为一种常见优化问题的 策略 ,该方法的特点是: 其迭代过程中,将 数值解 的方向和步长分开执行 。对应 数学符号 表达如下: 其中 P k mathcal P_k P k ​ 是一个向量

    2024年02月13日
    浏览(47)
  • 机器学习中的分类算法详细介绍一(KNN、决策树)

    机器学习中的分类算法有:KNN算法、决策树、随机森林、SVM、极限学习机、多层感知机(BP神经网络)、贝叶斯方法。 关键知识:数据预处理(数据标准化)、K个邻居(需要由用户指定)、距离计算方式(需要考虑数据的特点) 核心思想:物以类聚人以群分,空间相近则类

    2024年02月09日
    浏览(42)
  • SuperPoint和SuperGlue 的算法介绍及学习应用经验分享

    特征点提取和匹配是多视图几何的基础理论知识,在SLAM相关领域有着重要作用。比如在视觉SLAM中,著名ORBSLAM就是基于特征点法的,一般通过特征点提取和匹配,再根据匹配关系进行几何求解就可以得到位姿。 一般流程为 1.输入一对图像 2.提取特征点 3.进行匹配 4.根据匹配关

    2024年01月19日
    浏览(45)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包