当前位置: 首页 > wzjs >正文

青岛网站推广途径百度指数购买

青岛网站推广途径,百度指数购买,兰州做网站价格,做化工外贸需要那些网站这道题可以使用贪心算法来解决,核心思路是尽量让高位的数字尽可能小。当我们逐步删除数字时,会优先删除高位中相对较大的数字。具体做法是从左到右遍历数字序列,当发现当前数字比它后面的数字大时,就删除当前数字,直到…

这道题可以使用贪心算法来解决,核心思路是尽量让高位的数字尽可能小。当我们逐步删除数字时,会优先删除高位中相对较大的数字。具体做法是从左到右遍历数字序列,当发现当前数字比它后面的数字大时,就删除当前数字,直到删除了S个数字或者遍历完整个序列。如果遍历完后删除的数字个数还不够S个,就从序列的末尾继续删除。
在这里插入图片描述

【算法思路】

  1. 输入处理:使用 string 类型存储高精度的正整数 num,并读取要删除的数字个数 s

这道题为什么用字符串存储而不是数组存储?

处理大整数的便利性:题目中明确提到输入的是一个高精度的正整数,且不超过 250 位。普通的整数类型(如 intlong long)所能表示的数值范围是有限的,无法存储如此大的数字。字符串可以轻松地存储任意长度的数字序列,它本质上是字符数组,每个字符对应数字的一位,不受数值范围的限制。例如,对于一个 200 位的大整数,使用字符串可以直接将其按位存储,不会出现溢出问题。

操作的灵活性:在本题中,需要进行删除数字的操作。字符串提供了方便的方法来删除指定位置的字符,例如在 C++ 中可以使用 erase 函数。对于字符串 str,可以使用 str.erase(i, 1) 轻松删除第 i 个位置的字符。

//数组存储
vector<int> num(n);
int k;
for(int i=0;i<n;i++){cin>>num[i];
}
cin>>k;//字符串存储
string num;
int k;
cin>>num>>k;
  1. 删数操作
  • 进入一个循环,循环次数为 k 次。
  • 在每次循环中,从左到右遍历 num,找到第一个满足 num[i] > num[i + 1] 的位置 i,然后删除该位置的数字。
  • 如果内层循环结束后 deleted 仍然为 false,说明在当前数字字符串中没有找到递减的位置,此时使用 num.erase(num.length() - 1, 1) 删除字符串的最后一个字符,并将 k 减 1。
  1. 去除前导零:删数操作完成后,可能会出现前导零的情况,因此需要去除前导零。

    • 定义int类型的变量start变量初始化为0,用于记录数字字符串中第一个非零字符的位置。
    • 进入 while (start < num.length() && num[start] == '0') 循环,从字符串的开头开始遍历,只要没有遍历到字符串末尾且当前字符是0,就将start加1。
    • 用三目运算符处理前导零并且给num赋予合适的值。
  2. 输出结果:如果去除前导零后 num 为空,说明最终结果为 0,输出 0;否则输出 num

【代码示例】

#include<iostream>
#include<string>
using namespace std;int main(){string num;int k;cin>>num>>k;//进行k次删除操作 while(k > 0){bool deleted=false;//标记是否找到递减位置 for(int i=0;i < num.length()-1;++i){if(num[i] > num[i+1]){//找到第一个递减的位置,删除改位置的数字num.erase(i,1);deleted=true;k--;break;}}//如果没找到递减位置,删除末尾字符 if(!deleted){num.erase(num.length() - 1,1); k--;}}//去除前导零int start=0;while (start < num.length() && num[start] == '0'){start++;}num = (start==num.length()) ? "0" : num.substr(start);cout<<num<<endl; return 0;
}

注意:

  • 边界处理:若序列完全递增,删除末尾数字

  • substr:是 std::string 类的一个成员函数,num.substr(start) 会返回从字符串 num 的第 start 个位置开始一直到字符串末尾的子字符串。

http://www.dtcms.com/wzjs/2229.html

相关文章:

  • 合肥微网站360搜索引擎推广
  • 网站开发 团队构成seo文章是什么
  • 营销型企业网站建设的基本原则是精准营销平台
  • 吉林大学学风建设专题网站百度关键词推广网站
  • 网站建设工资一月多少百度推广热线电话
  • 北京迈程网络网站建设公司菏泽seo
  • 网站图片素材下载临沂森工木业有限公司
  • 个人网站布局下载搜狗站长平台
  • 学生个人网站建设方案书框架栏目沧州seo推广
  • 瑞丽市建设局网站怎么让百度搜出自己
  • 申报课题所需的网站怎么做宁波seo哪家好快速推广
  • ps做的网站怎么到网站上预览营销知识和技巧
  • 网站描述样本怎么注册百度账号
  • 独立站海外推广百度关键词怎么优化
  • 政府门户网站建设管理情况国际网络销售平台有哪些
  • 东莞行业网站建设锦州网站seo
  • 网站推广营销海外品牌推广
  • 云南省工程建设交易系统网站市场调研报告范文大全
  • 便宜网站设计推广普通话手抄报模板
  • 北京到安阳高铁时刻表一键优化软件
  • 新疆旅游网站建设营销型网站建设实训总结
  • 珠海网站制作专业网站如何进行优化
  • 远程教育网站建设找资源的关键词有哪些
  • 做界面的网站广州seo全网营销
  • 微商分销平台天津关键词优化网排名
  • 叫人做网站后不提供源码品牌营销理论有哪些
  • 怎么注册网自己的网站吗萝卜建站
  • 四川住房和城乡建设厅网站三类人员windows 优化大师
  • 商城网站页面模板优化搜索关键词
  • 百度手机网站优化域名查询注册商