蓝桥杯技巧合集

1.利用Excel

题目描述

刷题链接

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

 每项是前一项的一半,如果一共有 20 项,求这个和是多少,结果用分数表示出来。

类似:3/2,当然,这只是加了前 2 项而已。分子分母要求互质。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

解1:

 蓝桥杯技巧合集_第1张图片

 解2:

#include 
#include
#include
using namespace std;
int main()
{
  int sum=0;
  for(int i=0;i<20;i++)
  {
      sum+=pow(2,i);
  }
  int l=pow(2,19);
  int g=__gcd(sum,l);
  l/=g;
  sum/=g;
  cout<

 解3:

手算+计算器辅助

  

2.一个一个数

题目1描述 

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

作为篮球队教练,你需要从以下名单中选出 1 号位至 5 号位各一名球员,组成球队的首发阵容。

每位球员担任 1 号位至 5 号位时的评分如下表所示。请你计算首发阵容 1 号位至 5 号位的评分之和最大可能是多少?

蓝桥杯技巧合集_第2张图片

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

解: 

蓝桥杯2019省赛C++B组真题总结_东部花园的博客-CSDN博客

 以上链接的第一题。

题目2描述

刷题链接

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝要用七段码数码管来表示一种特殊的文字。

蓝桥杯技巧合集_第3张图片

上图给出了七段码数码管的一个图示,数码管中一共有 7 段可以发光的二 极管,分别标记为 a, b, c, d, e, f, g。

小蓝要选择一部分二极管(至少要有一个)发光来表达字符。在设计字符 的表达时,要求所有发光的二极管是连成一片的。

例如:b 发光,其他二极管不发光可以用来表达一种字符。

例如 c 发光,其他二极管不发光可以用来表达一种字符。这种方案与上 一行的方案可以用来表示不同的字符,尽管看上去比较相似。

例如:a, b, c, d, e 发光,f, g 不发光可以用来表达一种字符。

例如:b, f 发光,其他二极管不发光则不能用来表达一种字符,因为发光 的二极管没有连成一片。

请问,小蓝可以用七段码数码管表达多少种不同的字符?

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

 解:

1.先数只有一个发光的情况:7种

2.只有两个发光的情况:10个,编好号,方便数

3.只有三个发光的情况:数连着的中间的,笔者不再列举

4.只有四个发光的情况(数不发光的,不能隔开发光的):

5.只有五个发光的情况(两个不发光的):

6.六个发光:

7.七个发光:

8.以上加起来即可

3.利用计算器

题目描述

刷题链接

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

整个 20 世纪(1901 年 1 月 1 日至 2000 年 12 月 31 日之间),一共有多少个星期一?(不要告诉我你不知道今天是星期几)

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

解: 

直接用计算器日期计算,再举特殊例子推知天数/7后取下整即可

蓝桥杯技巧合集_第4张图片

4.Word替换

题目描述

原题链接

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝要为一条街的住户制作门牌号。

这条街一共有 2020 位住户,门牌号从 1 到 2020 编号。

小蓝制作门牌的方法是先制作 0 到 9 这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌 1017 需要依次粘贴字符 1、0、1、7,即需要 1 个字符 0,2 个字符 1,1 个字符 7。

请问要制作所有的 1 到 2020号门牌,总共需要多少个字符 2?

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

 解1:

1.简单实现打印1到2020

蓝桥杯技巧合集_第5张图片

 2.将以上数据粘贴到word中,利用word查找功能查找2,结果624,完毕。

蓝桥杯技巧合集_第6张图片蓝桥杯技巧合集_第7张图片

解2:

 当然,这个题代码实现也很简单。

#include 
using namespace std;
int count;
int main()
{
  // 请在此输入您的代码
  for(int i=0;i<=2020;i++)
  {
    if(i%10==2) count++;
    if(i/10%10==2) count++;
    if(i/100%10==2) count++;
    if(i/1000%10==2) count++;
  }
  cout<

你可能感兴趣的:(算法,蓝桥杯)