猿辅导2017 笔试题

2023-05-16

题目描述

小明认为某些数字不吉利,付账时会尽可能少的多付一些钱,使得价格中不包含这些不吉利数字,并且不出现0.例如,不吉利数字为1,4,7,8,商品价格为1000,小明实际支付2222.实现程序,输入商品原来的价格price,不吉利数字集合unlucky_numbers,求小明付账时的价格lucky_price.

// C
int get_lucky_price(int price,int unlucky_numbers[],int unlucky_numbers_count){
     //   TODO
}
 
// C++
int get_lucky_price(int price,const vector<int> & unlucky_numbers){
     //TODO
}
 
// Java
int getLuckyPrice(int price,List<Integer> unlucky_numbers){
     //   TODO
}
 

我的思路:
其实题目不需要用递归函数,但是我却用了一个递归函数,太搞笑了。从我的递归公式就可以看得出到底是否需要用递归函数。
思路就是判断是不幸数字吗,如果不是那就增长1,并在0-9之间循环,如果9是不幸数字,那么增长1的同时还要给高位加1.

// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
#include <algorithm>
#include <string.h>
#include <string>
#include <math.h>
#include <vector>
#include <map>

using namespace std;
const int MaxS = 100 + 10;

/*功能: 让ch[i]的值在0-9之间循环,且当ch[i]的值为9且is_unlunky[]为true时ch[i+1]的值加1
出栈条件:i+1 小于len或者is_unlucky[]为false,递归公式 ch[i+1] = {ch[i+1] + 1 | ch[i] == 9 && is_unlucky[i] == true}
初始值:数组ch和is_unlucky显然已经初始化过了
参数1:a1 用来接收初始位置i
*/
void tolucky(int a1,int(&is_unlucky1)[MaxS],char* ch,int len) {
	if (a1 < 0) return ;
	bool flag = false;
	while (is_unlucky1[ch[a1] - '0'] == 1) {
		if (ch[a1] == '9'&&is_unlucky1[ch[a1] - '0'] == 1) {
			flag = true;
		}
		if (flag == true) {
			ch[a1 - 1] += 1;
		}
		ch[a1] = '0' + (ch[a1] + 1 - '0') % 10;// 让ch[i]的取值在 0 - 9 之间循环。
	}
	tolucky(a1 - 1, is_unlucky1, ch, len);
	return;
}

int get_lucky_price(int price, const vector<int> & unlucky_numbers) {
	int is_unlucky[MaxS] = { 0 };
	for (int i = 0;i < unlucky_numbers.size();i++) {
		is_unlucky[unlucky_numbers[i]] = 1;
	}
	char ch[MaxS];
	sprintf(ch, "%d", price);
	int len = strlen(ch);
	tolucky(len-1, is_unlucky, ch, len);
	string s = ch;
	return stoi(s);
}




int main()
{
	freopen("Text.txt", "r", stdin);
	int price = 0,tp = 0;
	vector <int> unnums;
	scanf("%d", &price);
	while (scanf("%d", &tp)!=EOF){
		unnums.push_back(tp);
	}
	int lucky_price = get_lucky_price(price,unnums);
	printf("%d\n", lucky_price);
    return 0;
}


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

猿辅导2017 笔试题 的相关文章

  • 汇编总结:lea指令

    ea指令变种 按大小分类 leaw 2个字节 leal 4个字节 leaq 8个字节 lea的用法 leaq a b c d rax 首先lea指令是mov指令的变种 xff0c 据说 xff0c lea指令是x86体系结构中 xff0c
  • CMake语法—选项(option)

    CMake语法 选项 xff08 option xff09 1 选项 1 1 定义 1 2 说明 variable 选项名help text 描述 解释 备注value 选项初始化值 xff08 除ON而外全为OFF xff09 2 应用注
  • C++工程:总结 CMake 添加第三方库依赖方式git submodule、 find_library、FetchContent、CPM等

    CMake 已经成为了C 43 43 工程管理的主流方式 xff0c 功能非常强大 xff0c 现在大多数的 C 43 43 库都已经支持CMake xff0c 下面以 jsoncpp 为例 xff0c 介绍几种引入第三方库的方式 1 代码
  • 医学图像——DCMTK、VTK、ITK、RTK、SimpleITK

    1 引言 https github com SINTEFMedtek ITK VTK xff0c 相关童鞋应该很熟悉的 xff0c 而CTK是一个较新的界面库 xff0c 主要用于方便前面两个 TK的界面设计 xff0c 当然也可以作为通用
  • C++中的volatile

    volatile的本意是 易变的 volatile关键字是一种类型修饰符 xff0c 用它声明的类型变量表示可以被某些编译器未知的因素更改 xff0c 比如操作系统 硬件或者其它线程等 遇到这个关键字声明的变量 xff0c 编译器对访问该变
  • 3DTiles】关于GeometricError几何度量误差

    在 3DTiles 的官方文档中详细介绍了关于几何度量误差 Geometric Error 的一些理念和内涵 xff0c 概括来说可以翻译为如下定义 xff1a 几何度量误差 xff0c Geometric Error xff0c 简称 G
  • glPixelStorei 详解 包括像素传输

    3 glPixelStore 像glPixelStorei GL PACK ALIGNMENT 1 这样的调用 xff0c 通常会用于像素传输 PACK UNPACK 的场合 尤其是导入纹理 glTexImage2D 的时候 xff1a C
  • ESLint 简介

    ESLint简介 ESLint是一个用来识别 ECMAScript 并且按照规则给出报告的代码检测工具 xff0c 使用它可以避免低级错误和统一代码的风格 如果每次在代码提交之前都进行一次eslint代码检查 xff0c 就不会因为某个字段
  • IOS VasSonic 粗略见解

    因为项目需求需要在本地缓存html页面 xff0c 优化用户体验 了解到VasSonic 百度了下源码解析但是没有发现IOS的所以只有自己慢慢摸索了 一 类的简单关系 1 SonicEngine 引擎类 代理为 UIWebViewContr
  • axios的详细讲解

    一 axios的特性 axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端 xff0c 简单的理解就是ajax的封装 特性 xff1a 从浏览器中创建 XMLHttpRequests从 node js 创建
  • 无人机飞控算法-姿态估计-欧拉角-旋转矩阵-四元数

    无人机飞控算法 姿态估计 此系列记录了我理解的卡尔曼滤波从0到1的过程 xff0c 从姿态估计到位置估计 xff0c 我们从核心点一个个出发 xff0c 并结合实际模块的应用来一一揭开卡尔曼滤波的神秘面纱 提示 xff1a 在系列文章中 x
  • BMP格式详解

    介绍 数字图像在外存储器设备中的存储形式是图像文件 xff0c 图像必须按照某个已知的 公认的数据存储顺序和结构进行存储 xff0c 才能使不同的程序对图像文件顺利进行打开或存盘操作 xff0c 实现数据共享 图像数据在文件中的存储顺序和结
  • WinHex使用方法详解

    WinHex是由X Ways软件技术公司 xff08 官方网站http www x ways net xff09 开发的一款专业的磁盘编辑工具 xff0c 该工具文如其名 xff0c 是在Windows下运行的十六进制 xff08 hex
  • three.js流动线

    效果 xff1a 先看最基本的 function initThree el options options 61 options const t 61 this appInstance 61 this const width 61 el o
  • OpenGL之FBO(Frame Buffer Object)和多次离屏渲染

    第一次听到离屏渲染的时候觉得很高级 xff0c 遥不可及 xff0c 直到后来做高斯模糊的时候 xff0c 需要通过两次处理来节省性能 xff0c 一直玩一次渲染处理的我这时候才认识FBO xff0c 继而明白了离屏渲染 xff0c 今天抽
  • Android驱动(一)硬件访问服务学习之(四)Android应用程序APP编写

    硬件平台 xff1a tiny4412系统 xff1a Android 5 0 2编译器 xff1a arm linux gcc 4 5 1 xff08 一 xff09 Android通过JNI访问硬件 http blog csdn net
  • gl_FragCoord 的含义

    gl FragCoord 表示当前片元着色器处理的候选片元窗口相对坐标信息 xff0c 是一个 vec4 类型的变量 x y z 1 w xff0c 其中 x y 是当前片元的窗口坐标 xff0c OpenGL 默认以窗口左下角为原点 xf
  • RoboMaster机甲大师——视觉组——计算平台的选型与感想(主流几款)

    RoboMaster机甲大师 视觉组 计算平台 xff08 工控机 xff09 的选型与感想 xff08 主流几款 xff09 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介 xff1
  • 如何在Linux命令行下发送和接收UDP数据包

    众所周知 在传输层有两个常用的协议 TCP 和 UDP 本文介绍在 Linux 命令行下 如何使用 nc 命令发送或接收 UDP 数据包 这些命令的用法对调试 UDP 通信程序将有所帮助 1 问题的提出 编写了一个使用 raw socket
  • 抽丝剥茧聊Kotlin协程之聊聊Job和SupervisorJob的区别

    1 前言 随着协程的普及 xff0c 协程知识越来越被面试官青睐 首先 xff0c 协程的面试题一般都很简洁 xff0c 一两句简单的话就能把问题描述清楚 xff0c 其次于面试官而言 xff0c 协程框架中精妙的数据结构与算法可以很好的考

随机推荐

  • Android 手机运行 JoyCon Droid 并且使用 Amiibo

    PS 整个过程耗时耗力 xff0c 经常会断开连接 xff0c 有些不想搞那么麻烦的人就不要搞了 xff0c 以免遭受刺激啊 xff0c 哈哈 前提 如果想使用并刷Amiibo xff0c 必须同时满足以下几个条件 xff1a 1 蓝牙版本
  • STM32F10X系列通用OTA bootloader移植与使用指南

    基于STM32F10X系列通用OTA bootloader原理 移植与使用全指南 写在前面这几天我都做了什么呢 xff1f 有什么感受 xff1f 开始移植 写在前面 从2020 1 26到2020 1 30这5天 xff0c 我的较多研究
  • FreeRTOS笔记——链表数据结构

    FreeRTOS链表实现 0 概述1 关键结构体1 1 链表基础知识1 2 链表数据结构1 3 链表操作 0 概述 部分内容参考野火的FreeRTOS相关开发资料 xff0c 在此做一个学习记录总结 1 关键结构体 FreeRTOS源码实现
  • pyqt5 状态栏(statusBar)永久显示

    在主界面加了一个状态栏 xff0c 作为简易操作说明 xff0c 但是点击菜单栏时 xff0c 不管是否选中菜单栏下的选项 xff0c 状态栏都会消失 网上给了很多关于永久显示状态栏的方法 xff1a self status 61 self
  • 树莓派4B部署Intel Realsense T265相机

    硬件 xff1a 树莓派4B 8G内存 系统 xff1a Ubuntu 20 最初我是参照这篇博客树莓派上部署英特尔深度相机IntelRealsense T265 xff08 他人8月7日刚写的 xff09 我树莓派上librealsens
  • Phpstorm2018 永久激活

    原文地址 1 安装phpstorm xff0c 安装包请自行官网下载 http www jetbrains com phpstorm download 2 下载JetbrainsCrack jar文件 xff0c 存放至你的phpstorm
  • VMware + fedora25下安装QT5.8

    失业了 xff0c 搞单片机太久忘了这个linux xff0c 但为了重新找工作没办法重新学习 xff0c xff1a xff08 这几天手提上安装VMware和Fedora25 xff0c 把QT5 8安装了 xff0c 过程曲折 xff
  • Reproducible Research in Computational Science

    Reproducible Research in Computational Science http www csee wvu edu xinl source html It doesn 39 t matter how beautiful
  • 无人机学习所遇问题动态记录

    问题一 QGC显示 xff1a Detected 0 radio channels To operate PX4 you need at least 5 channels 原因 xff1a RC插错位置 解决方案 xff1a SBUS对应的
  • 四轮全向轮是不是比麦轮的控制难度大?

    经过一番搜索 xff0c 就发现一个做四轮全向小车的大佬 xff0c 其他都是四轮麦轮 xff0c 做四轮小车是麦轮比较好 xff1f 优点有哪些呢 xff1f
  • NoValidHost: No valid host was found. : NoValidHost_Remote: No valid host was found.

    openstack的queens版本创建实例的时候实例状态ERROE 查看日志以下错误 2019 12 10 11 32 25 436 4805 WARNING nova scheduler utils req d3743b51 2f00
  • 解决Windows下Pixhawk(PX4)编译提示没有cmake的问题

    多谢楼下的提示 xff0c 原来是64位系统下环境变量中包含 xff08 x86 xff09 的问题 xff0c 所以下面的解决方法也是错的 xff0c 看看就好了 以前安装cmake的时候还会注意一下安装选项 xff0c 后来就潜意识认为
  • 嵌入式linux串口通信自发自收测试程序

    串口自收自发程序主函数 include 34 uart api h 34 int main int fd char buff BUFFER SIZE char buff2 61 34 Hello NUAA2440 n 34 int nrea
  • js删除对象的属性及封装方法

    javascript中可以通过delete删除对象的属性 xff1a 使用方法如下 xff1a span class hljs keyword style font family none border 0px background tra
  • XML 转sql

    XML 转 sql 思路一 用字符匹配 找到的例子 xff1a https github com hhyo mybatis mapper2sql https github com inanutshellus mybatis xml inte
  • 【无标题】

    学习目标 xff1a 分布式事务 学习内容 xff1a 1 CAP BASE 基本内容和实现 2 TCC SAGA 消息一致性 实现的最终一致性 3 CMQ https cloud tencent com developer article
  • dev 调试

    问题集锦 xff1a 1 dev的代码自动补全功能 xff08 vs的智能提示功能 xff09 的快捷键 2 调试时 xff0c 二维字符数组的样子 如图很是怪异 xff1a 3 这篇博文可以供以后出现问题后参考 xff0c 其主要改变的是
  • c语言scanf接收字符的问题

    scanf xff08 c xff0c amp c xff09 xff1b 与scanf xff08 c xff0c amp c xff09 xff1b 看上去差别很小实际上第二个仅仅多了一个空格 却差别很大 尤其是scanf接收的数据之前
  • 浮点错误

    转载部分 xff1a 浮点错误 您的程序运行时发生浮点错误 xff0c 比如遇到了除以 0 的情况 所以发生浮点错误应该考虑程序中 xff1a 是否可能出现了一个数除以0的情况 是否可能出现了一个数取余0的情况 是否发生了数据溢出而导致的除
  • 猿辅导2017 笔试题

    题目描述 小明认为某些数字不吉利 xff0c 付账时会尽可能少的多付一些钱 xff0c 使得价格中不包含这些不吉利数字 xff0c 并且不出现0 例如 xff0c 不吉利数字为1 xff0c 4 xff0c 7 xff0c 8 xff0c