result 가 없습니다.
247
작성한 질문수 7
안녕하세요 강사님. 강의 잘 듣고있습니다.
작성해주신 코드대로 하는데 결과 result가 없습니다..;;
result 가 빈 배열이 나옵니다.
makeword 메서드 부분에 dp 가 3개 이상일 경우에 return true를 해서 result 에 단어를 넣어줘야하는게 아닌가 싶습니다.
아래는 제가 강사님 코드를 수정해봤습니다.
private static boolean makeWord(String word, Set<String> set) {
if (set.isEmpty()) return false;
// 1. dp
boolean[] dp = new boolean[word.length() + 1]; // dp 첫번째는 무조건 True 로 둘 것이기 때문에 word 길이에 + 1 해서 만든다.
List<Boolean> dp_list = new ArrayList<>();
for (boolean bool : dp) {
dp_list.add(bool);
}
dp_list.set(0, true);
int checkPoint = 0;
boolean isCheck = false;
for (int i = 0; i < word.length(); i++) { // 4
for (int j = 0; j < i; j++) { // 1 , 2 , 3
if (dp_list.get(j) && set.contains(word.substring(j, i))) {
dp_list.set(i, true);
break;
}
}
}
long count = dp_list.stream().filter(x -> x.booleanValue() == true).count();
if (count >= 3) {
return true;
}
return false;
}
그리고 처음에 문제에 words (중복 없음) 으로 제시되었는데 왜 set 으로 하신건지 궁금합니다.
답변 1
2
강준님 안녕하세요~~
1. 질문주신내용 :작성해주신 코드대로 하는데 결과 result가 없습니다..;;
result 가 빈 배열이 나옵니다.
1-1 답변:
=> 먼저 result에 데이타가 안나오는거 부터가 이상한데요. 저는 result가 제대로 나옵니다.
아래 로그를 보면 잘 나오고 있습니다. (강의 소스랑 동일합니다)
result.add(words[i]); 이부분에 제대로 담기는지 로그를 먼저 찍어보시죠.
이게 안되셔서 다음 추가적인 수정을 하신거 같은데요.
2 HashSet을 사용한 이유?
=> 문제에서 중복이 안된다고 했지만, 예방차원이죠 . 또 contains 같은걸 쓰니까 다른 거보다 훨씬 편하죠.^^;
join에대해 질문드립니다.
0
8
1
pg사가 있다고 가정하면
0
10
0
중급 1편 학습 방향에 대해 조언 부탁드립니다
0
26
1
To-Do App
0
20
1
강의노트 접속 불가
0
15
2
Kafka Cluster 구성도 질문
0
17
1
26년 1회차 기출 강의
0
37
2
기출문제
0
50
1
정보처리기사 실기 zip
0
42
2
답을언제쯤받아볼수있나요
0
47
2
데이터베이스 노션
0
37
2
형 책 어떻게 받아?
1
54
1
PPT 자료 공유 받을 수 있을까요?
0
31
1
@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.
0
32
2
수업노선자료파일 다운
0
34
2
5~9까지 램덤숫자출력
0
29
1
프로젝트가 없어요..
0
56
2
C언어에서
0
55
1
유효한 솔루션이 없는 조건
1
195
1
다른 풀이방법질문
1
238
1
Priority Queue 대신 LinkedList 사용 이유를 알 수 있을까요??
1
377
2
영상 오디오가 너무 이상해요 ㅠㅠ
1
296
1
입출력 예시가 잘못된거 아닌가요??
1
175
2
가장 바깥 괄호제거
1
541
3





