蓝桥杯理历年真题 —— 数学

1. 买不到的数目

        这道题目,考得就是一个日常数学的积累,如果你学过这个公式的话,就是一道非常简单的输出问题;可是如果没学过,就非常吃亏,在考场上只能暴力求解,或是寻找规律。这就要求我们什么呢,要注重日常生活对数学的积累。当然,如果你现在正在准备竞赛,就duck不必了。

        公式:( q - 1 ) * ( p - 1 ) - 1

#include <iostream>
using namespace std;

int main()
{
    int q,p;
    cin  >> q >> p;
    cout<<(p-1)*(q-1)-1<<endl;
    return 0;
}

2. 蚂蚁感冒

        首先,我们先简单理解一下题目,有一群面向不同方向(输入的负数代表的方向)的蚂蚁在树枝上爬行,如果两只蚂蚁相遇,就掉头,这里我们可以理解为互相穿过去(因为速度等都是一样的,所以可以这样理解)。有一只蚂蚁感冒会传染给相遇的蚂蚁,这里我们可以分成两种情况:

第一种情况:蚂蚁在首尾两端并且都是面向出口,那么只会有一只蚂蚁感冒。

第二种情况:蚂蚁在中间,那我们就要看蚂蚁面向的方向和左右两侧蚂蚁面向的方向。

         1. 蚂蚁向左走,如果左边没有向右走的,那么不会有蚂蚁被感染,只有1个感冒蚂蚁。

             如果左边有向右走的,那么所有左边向右走的,和右边向左走的都将被感染,

        2. 同理,蚂蚁向右走,如果右边没有向左走的,只有1个感冒蚂蚁。反之,左边向右走的+右边向左走的+1个蚂蚁感冒。

        我们这样就可以简单的理解,先求出左边向右走的蚂蚁(left) 和 右边向左走(right)的蚂蚁,最后判断left 和 right 等不等于0,即可。

#include <iostream>
#include <cmath>
using namespace std;

const int N =60;
int X[N];

int main()
{
    int n;
    cin >>n;
    for(int i=0;i<n;i++)
    cin>>X[i];
    
    int left = 0;   //左边向右走的
    int right = 0;  //右边向左走的
    //如果感冒蚂蚁向右走,当left=0时:1 ; 当left>0时:left+right+1;
    //如果感冒蚂蚁向左走,当right=0时:1 ; 当right>0时:left+right+1;
    for(int i=1;i<n;i++)
    {
        if(abs(X[i]) > abs(X[0]) && X[i] < 0)
            left++;
        if(abs(X[i]) < abs(X[0]) && X[i] > 0)
            right++;
    }
    
    if((X[0] > 0 && left == 0) || (X[0] < 0 && right == 0) )
        cout<<1<<endl;
    else
        cout<<left+right+1<<endl;

    return 0;
}

        上面代码如果感觉理解有点困难的话,可以试着画画图,即可,比如画出感冒蚂蚁向左走,左边没有向右走的蚂蚁。

3. 饮料换购

        这也是一道奥数常见的题目,对于这种题目,我们只需要来一个样例即可,这里以10为例:

        这里饮料其实也可以等于瓶盖,因此我们只需要创建1个变量来代表瓶子和瓶盖即可。

#include <iostream>

using namespace std;

int main()
{
    int n;
    cin>>n;
    int ret = n;
    while(n >= 3){
        ret += n/3;
        n = n/3 + n%3;
    }
    cout<<ret;
    return 0;
}

相关推荐

  1. 历年值DFS

    2024-01-22 06:50:01       35 阅读
  2. 历年省赛之 2016年 第七届 生日蜡烛

    2024-01-22 06:50:01       31 阅读
  3. C/C++A组省赛历年题解(2020~2023)

    2024-01-22 06:50:01       34 阅读
  4. 训练 包子凑数(数论

    2024-01-22 06:50:01       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-22 06:50:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-22 06:50:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-22 06:50:01       87 阅读
  4. Python语言-面向对象

    2024-01-22 06:50:01       96 阅读

热门阅读

  1. SpringBoot整理-Spring Boot与Spring MVC的区别

    2024-01-22 06:50:01       63 阅读
  2. Apache Hive(二)

    2024-01-22 06:50:01       55 阅读
  3. for...in、for...of、for...Each的详细区别!

    2024-01-22 06:50:01       54 阅读
  4. 设计模式-命令模式

    2024-01-22 06:50:01       65 阅读
  5. kotlin flatten 与 flatMap

    2024-01-22 06:50:01       55 阅读
  6. Centos系统上安装PostgreSQL和常用PostgreSQL功能

    2024-01-22 06:50:01       56 阅读
  7. 【LeetCode-134】加油站(贪心)

    2024-01-22 06:50:01       56 阅读
  8. Django笔记(五):模型models

    2024-01-22 06:50:01       58 阅读