inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

4. 단어 뒤집기(StringBuilder이용법 또는 직접뒤집기)

오답 원인 문의

173

Cat Developer

작성한 질문수 7

0

import java.util.Scanner;

public class 단어뒤집기 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        StringBuilder sb = new StringBuilder();

        int num = sc.nextInt();
        String text1 = sc.next();
        String text2 = sc.next();
        String text3 = sc.next();

        text1 = sb.append(text1).reverse().toString();
        sb.setLength(0);

        text2 = sb.append(text2).reverse().toString();
        sb.setLength(0);

        text3 = sb.append(text3).reverse().toString();
        sb.setLength(0);

        System.out.println(text1);
        System.out.println(text2);
        System.out.println(text3);

        sc.close();
    }
}

단어 뒤집기 강의 듣기전 제가 짠 소스인데, 출력결과는 문제와 동일하게 나왔는데, 제출 시 오답나와서 어떤 예외가 있는건지 몰라 문의드립니다. 혹시 불필요한 소스가 있는지도 궁금합니다.

java 코딩-테스트

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

Cat Developer님, 제출하신 단어뒤집기 코드를 확인해보니 입력 받는 단어의 수가 정해져 있지 않고, num 변수를 통해 여러 개의 단어를 입력 받을 수 있는 것으로 보입니니다. 그럼에도 불구하고 코드에서는 text1, text2, text3 세 개의 단어만을 뒤집어 출력하고 있으므로, 이 점이 오답의 원인이 될 수 있습니다.

문제의 요구사항에 따라 num 변수를 활용하여 입력 받은 단어의 수만큼 반복문을 사용하여 단어를 뒤집는 로직으로 수정이 필요합니다. 예를 들어, 다음과 같이 코드를 수정할 수 있습니다.

import java.util.Scanner;

public class 단어뒤집기 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        StringBuilder sb = new StringBuilder();

        int num = sc.nextInt(); // 입력 받을 단어의 수

        for (int i = 0; i < num; i++) {
            String text = sc.next(); // 단어 입력 받기
            text = sb.append(text).reverse().toString(); // 단어 뒤집기
            sb.setLength(0); // StringBuilder 초기화
            System.out.println(text); // 뒤집은 단어 출력
        }

        sc.close();
    }
}

num 만큼 for문을 실행하여 입력 받은 각 단어를 뒤집고 출력하는 형태로 변경하는 것이 좋겠습니다. 이렇게 하면 입력 받은 단어의 수에 맞게 단어를 뒤집어 출력할 수 있습니다.

불필요한 소스는 현재 보여주신 내용에서는 딱히 없으나, 문제 요구사항에 따라 입력과 출력의 형식을 정확히 맞추어야 한다는 것을 유념해주시기 바랍니다.

안녕하세요. 바뀐 채점사이트 관련해서 문의드립니다.

0

26

1

갑자기 채점 사이트가 바뀌었어요

0

31

1

문제 리스트 페이지

0

26

1

채점 사이트 관련 질문드립니다

0

23

1

봉우리 문제 질문입니다

0

80

2

씨름 선수 문제에서 각 선수의 몸무게나 키가 같을 수도 있다면?

0

64

0

이 코드랑 영상 코드중에 뭐가 더 좋은 코드인가요?

0

71

0

가중치 방향 그래프에서 가중치가 0인 간선을 표현하는 방법

0

67

1

좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ

0

84

2

6-7 강의에서

0

47

1

6-6. 장난꾸러기 질문 있습니다.

0

44

1

강의 수강후 코딩테스트

0

109

1

answer 변수 사용 여부

0

43

1

2중 for문

1

84

2

2-11. 임시반장정하기 (Runtime Error)

0

63

1

혹시 LinkedList 같은 자료 구조들은 따로 배우지 않나요?

0

70

1

이런 풀이는 어떨까요

0

42

1

자바 스트림 방식의 효율성 질문 드립니다.

0

57

1

알고리즘 자료 구조들..

0

61

1

StringBuilder vs BufferdWriter

0

47

1

원더랜드(프림)

0

49

1

이런 코드는 어떤가요?

0

60

1

bfs 풀이

0

57

1

병합정렬

0

55

1