코딩테스트 풀이/JAVA
[LeetCode/Easy] 66. Plus One
무지맘
2023. 1. 12. 23:27
1. Input
1) 정수 배열 digits
2. Output
1) digits가 나타내는 숫자에 1을 더한 숫자를 배열로 표현한 결과
- digits가 나타내는 숫자가 매우 클 수도 있다.
3. Constraint
1) 1 <= digits.length <= 100
2) 0 <= digits[i] <= 9
4. Example
Input: digits = [4,3,2,1] -> Output: [4,3,2,2]
Input: digits = [9] -> Output: [1,0]
5. Code
1) 첫 코드(2023/01/12)
import java.util.*;
Stack<Integer> s = new Stack<Integer>();
digits[digits.length-1]++;
boolean carry = digits[digits.length-1]>=10 ? true : false;
s.push(digits[digits.length-1]%10);
for(int i=digits.length-2 ; i>=0 ; i--){
if(carry) digits[i]++;
carry = digits[i]>=10 ? true : false;
s.push(digits[i]%10);
}
if(carry) s.push(1);
int[] answer = new int[s.size()];
for(int i=0 ; i<answer.length ; i++){
answer[i] = s.pop();
}
return answer;