inflearn logo
강의

Course

Instructor

Coding Test Practice Test (with Java)

4. Connected Words (Dynamic Programming)

result 가 없습니다.

245

jundol

7 asked

1

안녕하세요 강사님. 강의 잘 듣고있습니다.

작성해주신 코드대로 하는데 결과 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 으로 하신건지 궁금합니다.

java 코테 준비 같이 해요!

Answer 1

2

pushupman

강준님 안녕하세요~~

1. 질문주신내용 :작성해주신 코드대로 하는데 결과 result가 없습니다..;;

result 가 빈 배열이 나옵니다.

1-1 답변:

=> 먼저 result에 데이타가 안나오는거 부터가 이상한데요. 저는 result가 제대로 나옵니다.

아래 로그를 보면 잘 나오고 있습니다.  (강의 소스랑 동일합니다)

result.add(words[i]); 이부분에 제대로 담기는지 로그를 먼저 찍어보시죠.

이게 안되셔서 다음 추가적인 수정을 하신거 같은데요. 

2  HashSet을 사용한 이유?

=> 문제에서 중복이 안된다고 했지만, 예방차원이죠 . 또 contains 같은걸 쓰니까 다른 거보다 훨씬 편하죠.^^;

0

jundol

강사님 안녕하세요!

제가 소스코드 따라하다가 실수가있던것 같습니다 ㅎㅎ;

 주말에도 답변 주셔서 감사합니다 :)

강사님.. 하단 URL에 있었던 코드들 다운 받거나 공유 부탁 드립니다..

0

15

2

노션 접근권

0

19

1

@Version 어노테이션이 붙은 필드는 낙관적 락이든 비관적 락이든 업데이트가 됩니다.

0

19

1

형 이번에 낸 책이랑 강의 내용에 차이가 있어?

1

36

1

형 나 몰래 책내면 모를 줄 알고?

1

30

1

OrderServiceTest 상문주문 테스트 시 update 쿼리 문의

0

21

1

멀티스레드

1

22

2

N+1 관련해서 질문있습니다.

0

37

3

성능 오버헤드

1

28

2

다음 강의는 언제 올려주시는지요?

0

37

2

하단 파일이 열리지 않습니다

0

35

1

ssh-keygen -t rsa -P "" 등 ssh 암호화? 는 하둡에서 필수인가요?

0

28

2

강의 중복 확인 요청

0

26

1

volatile에 대해 질문 있습니다.

2

39

2

Mark and Sweep

1

35

1

20년 4,5회 13번

0

27

2

GC 알고리즘

1

32

2

용어 질문

1

26

1

유효한 솔루션이 없는 조건

1

192

1

다른 풀이방법질문

1

233

1

Priority Queue 대신 LinkedList 사용 이유를 알 수 있을까요??

1

372

2

영상 오디오가 너무 이상해요 ㅠㅠ

1

293

1

입출력 예시가 잘못된거 아닌가요??

1

173

2

가장 바깥 괄호제거

1

539

3