티스토리 뷰
728x90

문제 풀이 과정
스트림과 람다식으로 간단하게 코드를 작성 할 수 있었다.
코드 실행 시에 11번 케이스만 오류가 나고 나머지는 모두 통과가 되었다. 반례를 생각해보니 0,0,0,0,0 일때는 0이 return 이 되어야 한다는 점이다.
문자열이기때문에 0,0,0,0,0 일때 00000이 나온다. 이것을 해결하기 위해서 코드 초반 부분에 배열의 전체 합을 구한 다음 합이 0일 때는 return 0으로 하는 것으로 해결이 되었다.
int sum = Arrays.stream(numbers).sum();
if(sum == 0){
return "0";
}
전체 코드
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.Arrays; | |
class Solution { | |
public String solution(int[] numbers) { | |
int sum = Arrays.stream(numbers).sum(); | |
if(sum == 0){ | |
return "0"; | |
} | |
StringBuilder sb = new StringBuilder(); | |
if(numbers.length == 1){ | |
sb.append(numbers[0]); | |
return sb.toString(); | |
} | |
Arrays.stream(numbers) | |
.boxed() | |
.sorted((x, y) -> { | |
int a = Integer.parseInt(String.valueOf(x) + String.valueOf(y)); | |
int b = Integer.parseInt(String.valueOf(y) + String.valueOf(x)); | |
return b - a; | |
}) | |
.forEach(sb::append); | |
return sb.toString(); | |
} | |
} |

728x90
'Algorithm > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 징검다리 (JAVA) (0) | 2023.01.17 |
---|---|
프로그래머스 - 숫자 게임 (JAVA) (0) | 2023.01.14 |
프로그래머스 - 타겟 넘버 (JAVA) (0) | 2023.01.11 |
프로그래머스 - 구멍보트 (0) | 2022.12.01 |
프로그래머스 - 프린트 (1) | 2022.11.30 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 취준
- 코테 준비
- 백준
- 제로베이스 백준 장학금
- 프로그래머스
- 코테준비
- 코딩테스트
- 코딩테스트 준비
- 주니어 개발자 취업 준비
- 개발자 취준
- 알고리즘
- 개발자 취업 준비
- 알고리즘 공부
- 프로그래머스 자바
- 자바
- 코딩테스트 공부
- 프로그래머스 카카오
- 기술 면접 준비
- 백엔드 개발자 취업 준비
- 취업준비
- 취업 준비
- 코딩테스트공부
- 코테공부
- 자바공부
- 제로베이스 백엔드 스쿨
- 백엔드 개발자
- java
- 백엔드 개발자 기술 면접 준비
- 개발자 면접 준비
- 알고리즘공부
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함