iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++中怎么保留最大的数
  • 210
分享到

C++中怎么保留最大的数

2023-06-19 12:06:44 210人浏览 薄情痞子
摘要

本篇内容介绍了“c++中怎么保留最大的数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!题目描述给定一个十进制的正整数number,选择从里面

本篇内容介绍了“c++中怎么保留最大的数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

题目描述

给定一个十进制的正整数number,选择从里面去掉一部分数字,希望保留下来的数字组成的正整数最大。 

输入描述

输入为两行内容,第一行是正整数number,1 ≤ length(number) ≤ 50000。第二行是希望去掉的数字数量cnt 1 ≤ cnt 

输出描述

输出保留下来的结果。

示例 

输入

325 1 

输出

35

解析

在一个整数中除去几位数字后剩余的数最大。这题的关键就在于我们如何去选择去掉的数字,也就是去掉数字的标准是什么。小白一幵始觉得除去最小的那几位数就可以了,但是这种想法是不对的。例如3120,如果去掉0为312,但是如果去掉1,则是320,要比312要大因此,我们可以判定,单纯的去掉最小的数是不对的。

正确的想法是去掉“比后一位”小的那位数,如果没有比后一位小的数(也就是整个数每一位都是递增的数),直接去掉最后一位;因为需要刪除数,因此使用list容器更加合理一些,而且list允许在首端插入,更加支持了用除以10余数的方法获取取每一位数。这里面要注意一个问题,就是每次只能去掉一个数,之后需要重新去寻找第—个比后一位小的数。

代码

#include <iOStream>
#include <list>
using namespace std;
int main()
{
 int number, cnt;
 while (cin>>number>>cnt)
 {
   list<int> Lnumber;
   while (number/10!=0)
   {
     Lnumber.push_front(number % 10);
     number = number / 10;
   }
   Lnumber.push_front(number);
   for (int i =0; i < cnt; i++)
   {
     for (auto  m = Lnumber.cbegin(); m != Lnumber.cend(); m++)
     {
       if (m==(--Lnumber.cend()))
       {
         m = Lnumber.erase(m);
         break;
       }
       auto n = m;
       if (*m<*(++n))
       {
         m = Lnumber.erase(m);
         break;
       }
     }
   }
   int lastnumber = 0;
   for (auto m:Lnumber)
   {
     lastnumber = lastnumber * 10 + m;
   }
   cout << lastnumber << endl;
 }
 return 0;
}

“C++中怎么保留最大的数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: C++中怎么保留最大的数

本文链接: https://www.lsjlt.com/news/295987.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++中怎么保留最大的数
    本篇内容介绍了“C++中怎么保留最大的数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!题目描述给定一个十进制的正整数number,选择从里面...
    99+
    2023-06-19
  • c++中除法怎么保留小数
    在 c++ 中除法保留小数需要:声明浮点数变量。将除数和被除数强制转换为浮点数。使用 printf() 或 cout 函数打印浮点数结果并指定小数位数。 如何在 C++ 中除法保留小数...
    99+
    2024-05-12
    c++
  • c++中除号怎么保留小数
    在 c++ 中使用除号除整数时,结果为整数,要保留小数,需将一个操作数转换为浮点数。方法有:1. 将其中一个操作数转换为浮点数;2. 使用 static_cast;3. 使用 doubl...
    99+
    2024-05-12
    c++
  • c++怎么保留有效位数
    在C++中,可以使用以下方法保留有效位数: 使用iomanip库中的setprecision函数来设置精度。setprecisio...
    99+
    2023-10-28
    c++
  • c语言怎么保留整数
    在 c 语言中,保留整数的方法有:使用 printf() 或 fprintf() 函数,指定格式说明符 %d。使用 % 运算符取模,保留特定位数。使用位掩码,保留特定位。使用浮点数类型,...
    99+
    2024-05-14
    git c语言
  • c++怎么保留两位小数
    在 c++ 中保留两位小数的方法包括:1. 使用格式化字符串,如 fixed 和 setprecision;2. 使用流操作符,如 setw 和 setprecision;3. 使用数学...
    99+
    2024-05-14
    c++
  • c++中怎样保留两位小数
    在 c++ 中保留两位小数的方法是:使用流操作符 fixed 指定固定点表示法。使用 setprecision(2) 指定小数点后保留 2 位。 在 C++ 中保留两位小数 在 C++...
    99+
    2024-04-26
    c++
  • c语言中怎么保留1位小数
    在 c 语言中,保留一位小数的方法有:1. 使用固定小数点格式化“%.1f”;2. 使用 round() 函数四舍五入到一位小数;3. 使用定制化格式化指定保留一位小数。 如何在 C ...
    99+
    2024-05-02
    c语言
  • c语言中怎么保留两位小数
    在 c 语言中,要保留两位小数,可以:声明一个浮点型变量。使用 printf() 函数打印浮点型变量。在格式化字符串中使用 %.2f 格式说明符。 C 语言中如何保留两位小数 在 C ...
    99+
    2024-04-27
    c语言
  • c语言怎么保留有效数字
    在 C 语言中保留有效数字可以使用格式化输出函数 `printf()` 或者字符串处理函数 `sprintf()` 进行处理。1. ...
    99+
    2024-02-29
    c语言
  • c语言中怎么保留两位小数输出
    c语言中保留两位小数输出:使用printf()函数;指定格式化说明符%.2f,表示浮点数保留小数点后两位。 C语言中保留两位小数输出 在C语言中,使用printf()函数进行格式化输出...
    99+
    2024-04-27
    c语言 格式化输出
  • MySQL大量脏数据,如何只保留最新的一条?
    因为系统的一个Bug,导致数据库表中出现重复数据,需要做的是删除重复数据且只保留最新的一条数据。 具体场景是这样的 有张订单关联额外费用表,而且一个订单号(order_no)记录只能关联同一个费用(cost_id)一次,...
    99+
    2023-04-21
    MySQL保留最新的一条 Mysql删除数据
  • c++保留有效位数怎么实现
    在C++中,可以使用std::setprecision函数来控制输出的有效位数。该函数位于头文件中。以下是一个示例代码: #incl...
    99+
    2023-10-23
    c++
  • c语言怎么保留两位小数
    在 c 语言中,可以通过以下方法保留两位小数:使用 printf() 函数中的 "%.2f" 格式说明符。使用 round() 函数将数字乘以 100 并除以 100。使用 fixed-...
    99+
    2024-05-13
    c语言
  • c++怎么保留两位小数输出
    如何保留两位小数输出?在 c++ 中使用 fixed 和 setprecision() 函数:1. #include & ; 2. fixed 确保固定小数点;3. setpr...
    99+
    2024-05-14
    c++
  • c语言中保留三位小数怎么表示
    c语言中保留三位小数的方法:使用printf()函数;使用格式说明符%.3f,其中.后跟的数字指定小数点后位数,f表示浮点数。 C语言中保留三位小数的表示方法 在C语言中,可以通过格式...
    99+
    2024-05-02
    c语言
  • C++中double类型怎么保留三位小数点
    这篇文章主要介绍“C++中double类型怎么保留三位小数点”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C++中double类型怎么保留三位小数点”文章能帮助大家解决问题。我以一个例子作为讲解:已...
    99+
    2023-06-27
  • 怎么正确保留大括号
    本篇内容主要讲解“怎么正确保留大括号”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么正确保留大括号”吧!自从Python  3.6开始,引入了f表达...
    99+
    2024-04-02
  • c++保留小数点后几位怎么弄
    在c++中,保留小数点后几位通常涉及到格式化输出。可以通过使用 i/o 流库中的 std::setprecision 和 std::fixed 来实现。可以使用 std::cout 和 ...
    99+
    2024-04-02
  • MySQL大量脏数据如何只保留最新的一条(最新推荐)
    因为系统的一个Bug,导致数据库表中出现重复数据,需要做的是删除重复数据且只保留最新的一条数据。 具体场景是这样的 有张订单关联额外费用表,而且一个订单号(order_no)记录只能...
    99+
    2023-05-16
    MySQL保留最新的一条 Mysql删除数据
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作