加一
来源:互联网 发布:新买的mac电池循环次数 编辑:程序博客网 时间:2024/04/27 23:47
给定一个非负数,表示一个数字数组,在该数的基础上+1,返回一个新的数组。
该数字按照大小进行排列,最大的数在列表的最前面。
样例
给定 [1,2,3] 表示 123, 返回 [1,2,4].
该数字按照大小进行排列,最大的数在列表的最前面。
样例
给定 [1,2,3] 表示 123, 返回 [1,2,4].
给定 [9,9,9] 表示 999, 返回 [1,0,0,0].
import java.util.Scanner;import java.util.Stack;/** * 给定一个非负数,表示一个数字数组,在该数的基础上+1,返回一个新的数组。该数字按照大小进行排列,最大的数在列表的最前面。样例给定 [1,2,3] 表示 123, 返回 [1,2,4].给定 [9,9,9] 表示 999, 返回 [1,0,0,0]. * @author Dell * */public class Test407 { public static void plus(int[] digits) { Stack<Integer> s=new Stack<>();int c=0;for(int i=digits.length-1;i>=0;i--){if(i==digits.length-1){ if(digits[i]+1==10) {s.push(0); c=1; if(i==0) { s.push(1); } }else{s.push(digits[i]+1);}}else{if(c==0){s.push(digits[i]);}else if(c==1){if(digits[i]+1==10){s.push(0);c=1;if(i==0){s.push(1);}}else{s.push(digits[i]+1);c=0;}}}}int [] plusOne =new int[s.size()];int k=0;while(s.isEmpty()!=true){plusOne[k++]=s.pop();}for(int i=0;i<plusOne.length;i++){System.out.print(plusOne[i]+" ");} }public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int[] a=new int[n]; for(int i=0;i<a.length;i++) { a[i]=sc.nextInt(); } plus(a);}}
阅读全文
0 0
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 指针的加一
- Plus One 加一
- 不将就----一加
- 计蒜客019-加一
- LintCode PlusOne 加一
- 题目:加一
- lintcode-加一-407
- LintCode : 加一
- 加一(LintCode)
- Spring4.1.1升级到4.3.9遇到的问题与解决方法
- 安装爬虫框架PySpider遇到的一个问题
- java设计模式---简单工厂模式篇
- toString()方法和valueOf()方法对比
- vue-cli中父子组件间的变量传递
- 加一
- socket编程(四)
- Oracle常用操作
- Wampserver64位官网下载以及安装配置
- Android开发-SQLite从资源文件中数据库复制到SD到增删改查-AndroidStudio
- 乐驾项目博客-5
- 字串的连接最长路径查找
- AOP术语
- (软件使用)powerDesinger的检索路径失败,总是显示找不到DBMS文件路径