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

浙江省邮电工程建设有限公司 网站门户网站需要多大的服务器

浙江省邮电工程建设有限公司 网站,门户网站需要多大的服务器,镜像的网站怎么做排名,二级网站收录1.最大数字 - 蓝桥云课 因为N最大是10 的17次方, 所以可以利用字符串来处理输入的数字的每一位 并且是从高到低依次处理的 然后通过函数charAt(i)来获取第i位的字符 再减去‘0’就可以将字符转化为整型了 假设每一位数字都是x 然后通过两种操作 加或者减来操…

1.最大数字 - 蓝桥云课

因为N最大是·10 的17次方,

所以可以利用字符串来处理输入的数字的每一位

并且是从高到低依次处理的

然后通过函数charAt(i)来获取第i位的字符

再减去‘0’就可以将字符转化为整型了

假设每一位数字都是x

然后通过两种操作

加或者减来操作

然后每次操作的话我们先判断加

如果这个数字的第i位还存在的话

那就可以进行加或者减

然后我们开始dfs之前先

判断加多少位,能把第一位变成9 

我们尽最大的努力去把每一位都加到9

两种情况

第一种 如果加法 的次数最多不超过9-x 吧 

因为加的次数多了又加到0了

做无用功了,你说对吧

第二种情况 如果加法 的次数不足以把x加到9 

我们

加的次数就是9-x 和n 中的最小值

(9-x)也就是x加到9的次数

t 取 (9-x)和 n 的最小值

回溯之前 : 剩余的 加的次数 就是n =n -t; 

然后就开始dfs()嵌套循环了

开始的时候是

dfs(i,v) i表示当前这个数的位数的下标

v 用来保存操作之后的值

dfs(i+1,v*10+t) 表示进入下一位,便利下一个节点i+1

然后需要保存这一次加法之后的值

然后如果回溯回回来就需要把给加法次数加回来

ok自己写一遍

emm,又出问题了,孩子们

import java.util.Scanner;/*** @author zb* date2025/3/26 21:32*/
public class Main {static int n ;static int add;static   int jian;static String num;static int max = 0;public static void main(String[] args) {Scanner in = new Scanner(System.in);n = in.nextInt();num = ""+n;add = in.nextInt();jian  = in.nextInt();
//       先从最高为开始操作dfs(0,0);System.out.println(max);in.close();}
//代表给第i位操作 ,v 用来保存操作的结果private static void dfs(int i, int v) {if(i<num.length()){
//            加法操作
//            获取第i位的数字int numi = num.charAt(i)-'0';
//            加到9所需要的次数int t = 9  - numi;
//            如果加的次数不能让这个数字加到9if(add<=t){
//              能加多少算多少t = add;}
//          减去消耗掉的加法次数add = add - t;
//            System.out.println(t+"   "+add);
//          便利叶子节点dfs(i+1,v*10 +numi+t);
//     从叶子节点变回来了     回复现场add = add+ t;
//            减法 的话一定要把这个数字给变成0
//           也就是减法必须要被这个位置的数字大
//            某一位最大只能变成9if(numi-jian<0&&numi!=9){
//                numi  = 9;
//               等于-1也就是变成9jian = jian - numi-1;
//                System.out.println("   "+jian);dfs(i+1,v*10 +9);jian  = jian + numi + 1;}}else {
//            保存进行操作之后得到的最大值max = Math.max(max,v);}}
}

整体思路没有问题,死于段错误

看了一下题目发现

最大的n已经完全超出了int 的范围了,当时写的时候没有注意输入的N 的范围

查了一下java中的long 范围是 从-2 的63次方到2 的63 次方-1,也就是范围到2 * 10 的18次方-1

用long 来接受输入n,就行了,emm,下次一定要睁大眼睛看输入的范围

接收输入得用nextLong ()

输出的sum也得用long 类型输出

然后dfs的第二个保存修改之后的数字的参数也得用long 

emm


文章转载自:

http://kqEc5cIa.krbjb.cn
http://ymRSdKgO.krbjb.cn
http://qBzQzlZv.krbjb.cn
http://ANuBRYJa.krbjb.cn
http://5gOj6v0M.krbjb.cn
http://er2d3xJR.krbjb.cn
http://bgigcZeP.krbjb.cn
http://nB8mWP1I.krbjb.cn
http://Ei0Weq3F.krbjb.cn
http://2AVM9zYM.krbjb.cn
http://jhrhBKl7.krbjb.cn
http://uronfwRP.krbjb.cn
http://Bkvbqp9s.krbjb.cn
http://RJw9S7Aw.krbjb.cn
http://fIqhuqSF.krbjb.cn
http://kixXlY7E.krbjb.cn
http://8VkR8fXk.krbjb.cn
http://n3v4tCIG.krbjb.cn
http://rWJWkheF.krbjb.cn
http://4GlX0UI5.krbjb.cn
http://3KpWtseF.krbjb.cn
http://SP0YcZPW.krbjb.cn
http://HsA7587M.krbjb.cn
http://ffETvqVe.krbjb.cn
http://KKZxNBoT.krbjb.cn
http://xKl5EMxa.krbjb.cn
http://1sAaMmvd.krbjb.cn
http://gesXxsL7.krbjb.cn
http://AjFrEVaL.krbjb.cn
http://dKGWsPaI.krbjb.cn
http://www.dtcms.com/wzjs/713294.html

相关文章:

  • 网站建设手机端pc端分开wordpress添加原创logo
  • 哪个网站可以做全网推广上海建筑企业
  • 贵南县wap网站建设公司久久建筑网登录
  • 怎样才能在百度搜索到自己的网站网站 防止采集
  • 网站备案被注销怎么办免费网站视频主持人
  • 国外html模板网站小程序模板消息推送
  • 网站开发和app的区别一键生成logo免费网站
  • 在服务器网站上做跳转页面主题资源网站建设反思
  • 合肥企业网站制作方案网站系统开发报价单
  • 企业建设网站的功能是什么意思类似wordpress的软件
  • 3d网站开发成本辽宁工程监督
  • 做一元购网站开发小程序需要哪些技术
  • 建设网站的效果目的及其功能上海企业网上公示官网
  • 个人网站需要什么页面江苏苏州
  • 网站用户体验评价方案福田网站建设标准数据
  • 网站百度不收录长春电商网站建设
  • 高清设计网站推荐WordPress防红
  • 企业网站策划方案模板工业设计是干嘛的
  • 连云港东海县做网站禄丰网站建设
  • 机场建设管理投资有限责任公司网站html制作一个网页
  • 自建网站服务器深圳市企业网站建设价格
  • 做电商网站商标十大设计网站
  • 网站后台看不到部分内容太原app定制
  • 建设银行东航龙卡登录东航网站上海企业seo
  • 揭东建设局网站wordpress在服务器上安装插件
  • 深圳网站建设公司968网站域名改了帝国cms
  • 美团网站除佣金表格怎么做网站建设有钱赚吗
  • app导航网站建设多少钱做电商网站一般需要什么流程图
  • wordpress网站如何播放视频播放iis 里没有网站
  • 做网站如何与腾讯合作青州网站建设qzfuwu