P8680 [蓝桥杯 2019 省 B] 特别数的和

题目描述

小明对数位中含有 2、0、1、9 的数字很感兴趣(不包括前导 0),在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。

请问,在 1 到 n 中,所有这样的数的和是多少?

输入格式

输入一行包含一个整数 n。

输出格式

输出一行,包含一个整数,表示满足条件的数的和。

输入输出样例

输入 #1

40

输出 #1

574

说明/提示

对于 20% 的评测用例,1≤n≤10。

对于 50% 的评测用例,1≤n≤100。

对于 80% 的评测用例,1≤n≤1000。

对于所有评测用例,1≤n≤10000。

蓝桥杯 2019 省赛 B 组 F 题。

---------------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------------

#include <iostream>
#include <string>
using namespace std;
int main()
{int n, i, sum;cin >> n;string a = "2", b = "0", c = "1", d = "9";for (i = 1,sum = 0; i <= n; i++){string I = to_string(i);string::size_type idx;idx = I.find(a);if (idx == string::npos);		//不存在,无操作else{sum = sum + i;		//符合条件,求和continue;}idx = I.find(b);if (idx == string::npos);		//不存在,无操作else{sum = sum + i;		//符合条件,求和continue;}idx = I.find(c);if (idx == string::npos);		//不存在,无操作else{sum = sum + i;		//符合条件,求和continue;}idx = I.find(d);if (idx == string::npos);		//不存在,无操作else{sum = sum + i;		//符合条件,求和}}cout << sum;return 0;
}

此题易疏忽的点是忘记用continue语句,导致如“21”这样同时含有2和1的数多次重复求和!

———————————————————————————————————————————

———————————————————————————————————————————

本解法使用了“字符串中查找另一个字符串的函数find”,这样可以判断“字符串里面是否含有某个字符串”。功能为在string对象中,查找参数string类型的字符串是否存在,如果存在,返回起始位置。不存在则返回 string::npos

其重载形式为:

string::size_type string::find(string &);

注:头文件要包含#include<string>

———————————————————————————————————————————

参考代码如下:

     string a = "xyz123";string b = "y";string c = "2";string::size_type idx;idx = a.find(b);    //在a中查找b.if (idx == string::npos )    //不存在cout << "0";else    //存在。cout << "1"; idx = a.find(c);    //在a中查找c。if (idx == string::npos)    //不存在cout << "0";else    //存在。cout << "1"; 

如此,使用find函数是不是方便我们许多呢~

祝看到这里的伙伴学C有成!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/470326.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot后端解决跨域问题

1.全局方式 新建一个conifg配置类&#xff0c;内容如下&#xff1a; Configuration public class CorsConfig implements WebMvcConfigurer {Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**")//是否发送Cookie.allowCrede…

「数据要素」行业简报|2024.11.上刊

纵观数据要素行业动态&#xff0c;洞察行业风向&#xff0c;把握行业脉搏&#xff01; 一、政策发布 1、《山东省公共数据资源登记管理工作规范(试行)》公开征求意见 11月7日&#xff0c;为认真贯彻落实《中共中央办公厅 国务院办公厅关于加快公共数据资源开发利用的意见》《…

什么是RAG? LangChain的RAG实践!

1. 什么是RAG RAG的概念最先在2020年由Facebook的研究人员在论文《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》中提出来。在这篇论文中他们提出了两种记忆类型&#xff1a; 基于预训练模型&#xff08;当时LLM的概念不像现在这么如日中天&#xff0…

Vite初始化Vue3+Typescrpt项目

初始化项目 安装 Vite 首先&#xff0c;确保你的 Node.js 版本 > 12.0.0。然后在命令行中运行以下命令来创建一个 Vite Vue 3 TypeScript 的项目模板&#xff1a; npm init vitelatest进入项目目录 创建完成后&#xff0c;进入项目目录&#xff1a; cd vue3-demo启动…

nginx部署H5端程序与PC端进行区分及代理多个项目及H5内页面刷新出现404问题。

在项目中会碰见需要在nginx代理多个项目&#xff0c;如果在加上uniapp开发的H5端的项目&#xff0c;你还要在nginx中区分PC端和手机H5端&#xff0c;这就会让人很头大&#xff01;网上大部分的资料都是采用在nginx的conf配置文件中添加区分pc和手机端的变量例如&#xff1a;set…

软件测试项目实战

软件测试是使用人工或者自动的手段来运行或者测定某个软件系统的过程&#xff0c;其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 在软件投入使用前&#xff0c;要经过一系列的严格测试&#xff0c;才能保证交付质量。 一、引言 1.编写目的 本文档…

2024开发者浏览器必备扩展,不允许还有人不知道~

在开发过程中&#xff0c;优秀的扩展工具能够极大提升我们的工作效率&#xff0c;简化工作流程&#xff0c;并使得在浏览器中的开发和调试变得更加便捷。 根据市场占比&#xff0c;Chrome、Safari、Edge、Firefox、Opera 是前五大浏览器&#xff0c;其中Chrome浏览器占据了领先…

分享一个傻瓜式一键启动的加速器

主要发现开通一个号能电脑手机互通&#xff0c;原来电脑手机各一个加速器钱包在滴血。。。一个月也很便宜差不多二十多 链接放这了&#xff0c;有需要自提&#xff1a;首页-小熊加速器http://xxjsq.co/ytfa

TDesign了解及使用

文章目录 1、概述2、快速开始2.1使用 npm 安装2.2通过 浏览器引入 安装2.3、使用 3、简单案例3.1 路由创建3.2、 页面创建3.3、 Table组件3.4、序号展示3.5、 图片展示及预览3.6、 性别字段处理 1、概述 TDesign 是腾讯推出的设计系统&#xff0c;旨在提供一致的设计语言和视觉…

11Java面向对象高级(篇2,Java程序的核心套路!!!!)

更多java知识请点击上面专栏&#xff01;&#xff01;&#xff01; 修道之始&#xff1a; 01Java基础入门(纯小白也能入门&#xff0c;速通Java&#xff0c;知识点归纳超级全面&#xff01;&#xff01;&#xff01;2024版后端成仙起始篇&#xff01;&#xff01;&#xff01;…

定时器(QTimer)与随机数生成器(QRandomGenerator)的应用实践——Qt(C++)

一、QTimer与QRandomGenerator &#xff08;一&#xff09;QTimer&#xff08;定时器&#xff09;[2] QTimer类为定时功能提供了一个高级编程接口。在使用QTimer时&#xff0c;实例化一个QTimer对象并将其timeout()发射信号与合适的信号槽相连接。通过调用QTimer的start()函数…

翼鸥教育:从OceanBase V3.1.4 到 V4.2.1,8套核心集群升级实践

引言&#xff1a;自2021年起&#xff0c;翼鸥教育便开始应用OceanBase社区版&#xff0c;两年间&#xff0c;先后部署了总计12套生产集群&#xff0c;其中核心集群占比超过四分之三&#xff0c;所承载的数据量已突破30TB。自2022年10月&#xff0c;OceanBase 社区发布了4.2.x 版…

AI绘画经验(stable-diffusion)

提示词理解 总的 AI绘画的优点是【想象力】&#xff0c;而不是自然语言的精确描述。 AI绘画只能控制【主体】和【风格】&#xff0c;姿势&#xff0c;表情&#xff0c;装饰&#xff0c;手指都太过于详细了。这也是【人类画师的魅力】 准确描述是徒劳的&#xff0c;只能通过【…

使用支付宝沙箱完成商品下单

使用支付宝沙箱完成商品下单 一&#xff1a;效果展示&#xff1a; 二&#xff1a;代码实现 1&#xff1a;准备工作&#xff1a; 申请支付宝沙箱账户&#xff1a; 登录 - 支付宝 然后要下载密钥密钥工具来生成密钥&#xff1b; 2&#xff1a;流程分析&#xff1a; 先是用户…

Linux设置socks代理

公司里绝大多数主机已经禁止外网访问&#xff0c;仅保留一台主机设置socks作为代理服务器。如下为对socks这一概念的学习整理 什么是socks 是OSI模型下会话层的协议&#xff0c;位于表示层与传输层之间&#xff0c;作用是&#xff1a; exchanges network packets between a c…

以往运维岗本人面试真题分享

以下是本人面试运维岗的一些面试经历&#xff0c;在此做个记录分享 目录 TCP/IP三次握手 IPtables IPtables四表五链都是什么&#xff1f; nat端口如何做&#xff1f; 开放本机的80端口该如何做&#xff1f; 如何在单用户模式下引导Centos&#xff1f; nginx轮询模式都有…

【Hadoop实训】Hive 数据操作①

目录 一、准备文件 1、创建表 2、 数据映射 二、HIVE的数据操作 1、基本查询 a、全表查询 b、选择特定字段查询 c、查询员工表总人数 d、查询员工表总工资额 e、查询5条员工表的信息 2、Where条件查询 a、查询工资等于5000的所有员工 b、查询工资在500到1000的员工信息 …

3.5【数据库系统】ER图

2、实体之间的关系 下面主要针对两个实体间的关系进行介绍 &#xff08;a&#xff09;一对一联系&#xff08;1:1&#xff09;如班级和班长&#xff0c;一个班级只有一个班长&#xff0c;一个班长只能在一个班级任职。 &#xff08;b&#xff09;一对多联系&#xff08;1&#…

笔记 | image may have poor performance,or fail,if run via emulation

在Docker Desktop中现象如图&#xff1a; 当你运行 AMD64 平台代码时&#xff08;Intel 和 AMD 芯&#xff09;&#xff0c;你的 Mac 必须模拟其CPU架构&#xff08;因为你自身是ARM&#xff09;。这通常会非常吃性能。 Docker Desktop 警告你在模拟 Intel/AMD x64 CPU 时性能可…

想租用显卡训练自己的网络?AutoDL保姆级使用教程(PyCharm版)

各位小伙伴们大家好~ 不知道各位同学在科研过程中是否有这样的苦恼 电脑无显卡。难不成我要用CPU跑实验吗&#xff1f;救救我吧电脑显卡算力太低。训练过程慢慢慢慢慢&#xff0c;等半天都出不来结果电脑显卡显存不够&#xff0c;batchsize稍微高一点点&#xff0c;就要爆显存…