蓝桥杯省赛基础题型试题及详细解析.docxVIP

  • 0
  • 0
  • 约9.91千字
  • 约 13页
  • 2026-05-12 发布于河北
  • 举报

蓝桥杯省赛基础题型试题及详细解析.docx

蓝桥杯省赛基础题型试题及详细解析

说明:本套试题选取蓝桥杯省赛(C/C++大学B组、Python组通用)高频基础题型,涵盖模拟、枚举、数论、字符串等核心考点,难度贴合省赛入门至中档水平,解析侧重手动解题思路和代码实操,避免生硬模板化表述,完全贴合真实备考场景,适合新手入门练习。

第一题:特别数的和(基础枚举题)

题目描述

小明对数位中含有2、0、1、9的数字很感兴趣(不包括前导0),请计算从1到n(n≤10000)中所有满足条件的数字的和。

输入:一个整数n(1≤n≤10000)

输出:所有满足条件的数字的和

示例:输入40,输出620(提示:1~40中,含2、0、1、9的数有1、2、9、10~19、20~29、30~39、40,求和得620)

详细解析

1.解题思路:这道题是蓝桥杯省赛常考的基础枚举题,核心是“遍历+数位判断”。步骤很简单:

①遍历从1到n的每一个数字;

②对每个数字,拆解它的每一位,判断是否包含2、0、1、9中的任意一个;

③若包含,就将这个数字加入总和,最后输出总和。

2.关键细节:拆解数位时,用“取余(%10)”获取当前个位,用“整除(/10)”去掉当前个位,循环直到数字变为0;注意数字本身为0时无需处理(题目要求不包括前导0,且遍历从1开始)。

3.代码实现(C++版):

cpp

#includeiostream

usi

文档评论(0)

1亿VIP精品文档

相关文档