Skip to content

Commit fdf1a0c

Browse files
committed
[level 3] Title: N으로 표현, Time: 37.35 ms, Memory: 96.7 MB -BaekjoonHub
1 parent 8e1498f commit fdf1a0c

File tree

2 files changed

+22
-20
lines changed

2 files changed

+22
-20
lines changed

프로그래머스/3/42895. N으로 표현/N으로 표현.java

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,37 @@
11
import java.util.*;
22

33
class Solution {
4+
ArrayList<HashSet<Integer>> dp = new ArrayList<>();
45

56
public int solution(int N, int number) {
6-
ArrayList<HashSet<Integer>> dp = new ArrayList<>();
7-
HashSet<Integer> set = new HashSet<>();
7+
if(N == number) return 1;
8+
// 빈 리스트 생성
9+
for(int i = 0; i <= 8; i++){
10+
dp.add(new HashSet<Integer>());
11+
}
812

9-
for(int i = 0; i < 9; i ++) {
10-
dp.add(new HashSet<>());
13+
// 이어 붙이기
14+
StringBuilder sb = new StringBuilder();
15+
for(int i = 1; i <= 8; i++) {
16+
sb.append(N);
17+
dp.get(i).add(Integer.parseInt(sb.toString()));
1118
}
1219

13-
for(int i = 1; i < 9; i++){
20+
// 사칙 연산
21+
for(int i = 2; i <= 8; i++) {
1422
HashSet<Integer> currentSet = dp.get(i);
15-
StringBuilder sb = new StringBuilder();
16-
for(int j = 0; j < i; j ++){
17-
sb.append(N);
18-
}
19-
20-
currentSet.add(Integer.parseInt(sb.toString()));
2123

22-
// 사칙연산
2324
for(int j = 1; j < i; j++) {
25+
int k = i - j;
2426
HashSet<Integer> setJ = dp.get(j);
25-
HashSet<Integer> setK = dp.get(i-j);
27+
HashSet<Integer> setK = dp.get(k);
2628

27-
for(int num1 : setJ){
28-
for(int num2 : setK){
29+
for(Integer num1 : setJ) {
30+
for(Integer num2 : setK) {
2931
currentSet.add(num1 + num2);
30-
currentSet.add(num1 - num2);
31-
currentSet.add(num1 * num2);
32-
if(num2 != 0) currentSet.add(num1 / num2);
32+
currentSet.add(num1 - num2);
33+
currentSet.add(num1 * num2);
34+
if(num2 != 0) currentSet.add(num1 / num2);
3335
}
3436
}
3537
}

프로그래머스/3/42895. N으로 표현/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
### 성능 요약
66

7-
메모리: 75.8 MB, 시간: 23.63 ms
7+
메모리: 96.7 MB, 시간: 37.35 ms
88

99
### 구분
1010

@@ -16,7 +16,7 @@
1616

1717
### 제출 일자
1818

19-
2025년 09월 15일 17:40:23
19+
2025년 09월 19일 20:11:00
2020

2121
### 문제 설명
2222

0 commit comments

Comments
 (0)