蓝桥模拟+真题讲解

今天谁一篇文章哈 !

由于本篇文章有些的题目只有图片,因此还望各位见谅。

目录

第一题

题目解析

代码原理

代码编写

填空技巧---巧用python

第二题

题目解析

​编辑

填空技巧---巧用python

第三题

题目链接

题目解析

必备知识

解题技巧

第四题

题目链接

题目解析

代码原理

代码编写

第五题

题目解析

代码原理

代码编写


第一题

题目解析

代码原理

代码编写

填空技巧---巧用python

也许会有小伙伴有疑问,现在在讲的不是c++的题吗,咋又用python了?这也是博主给大家讲的填空题的第三个技巧,巧用python,这个技巧需要点python基础,因此如果是大一的小伙伴们可以暂时先不要用这个技巧了

第二题

题目解析

填空技巧---巧用python

第三题

题目链接

0空间 - 蓝桥云课

题目解析

必备知识

1字节 = 8比特位

1kb = 1024字节

1mb = 1024kb

1gb = 1024mb   依次类推

解题技巧

使用计算器计算

第四题

题目链接

0货物摆放 - 蓝桥云课

题目解析

代码原理

代码编写

#include <iostream>
using namespace std;
int main()
{
  // 请在此输入您的代码
  long long n = 2021041820210418, sum = 0;
  for(long long l = 1; l * l * l <= n; l++)//一条边的三次方要小于等于n
  {
    if(n % l == 0)//确定第一条边
    {
      for(long long w = l; w * w * l <= n; w++)//从l开始可以防止出现一些重复情况
      {
        if(n / l % w == 0)//确定第二条条边
        {
          long long h = n / l / w;//确定第三条边
          //根据边的情况进行分类讨论
          if(w == h && h == l) sum++;
          else if(w == h || h == l || w == l) sum += 3;
          else sum += 6;
        }
      }
    }
  }
  cout << sum;
  return 0;
}

第五题

题目解析

题意很容易理解

代码原理

法一:

先将输入的数字使用sort进行一次排序,再遍历数组,依次与最大值比较,大于最大值则count+1

法二:

直接遍历数组,与最大值进行比较大于最大值则count+1

法一是博主的第一个想法,但事后博主与同学交流后发现好像不需要排序也可以搞定

代码编写

法一:

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; 

const ll N = 1000;
ll a[N];
int main() 
{
    int n = 0;
    cin >> n;
    for(ll i = 1; i <= n; i++)
    {
        cin >> a[i];
    }
    sort(a + 1, a + 1 + n);
    ll max_val = -0x3f3f3f3f, sum = 0;
    for(ll i = 1; i <= n; i++)
    {
        if(max_val < a[i]) {
            sum++;
            max_val = a[i];
        }
    }
    cout << sum;
    return 0;
}

法二:

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; 

const ll N = 1000;
ll a[N];
int main() 
{
    int n = 0;
    cin >> n;
    for(ll i = 1; i <= n; i++)
    {
        cin >> a[i];
    }
    ll max_val = -0x3f3f3f3f, sum = 0;
    for(ll i = 1; i <= n; i++)
    {
        if(max_val < a[i]) {
            sum++;
            max_val = a[i];
        }
    }
    cout << sum;
    return 0;
}

法一是考虑了乱序的情况,但是后来发现其实不考虑乱序好像也行

本次讲解就先到这,我们下期文章再见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值