inflearn logo
강의

Course

Instructor

Introduction to Java Algorithm Problem Solving: Coding Test Preparation

5. Reverse Specific Characters (toCharArray())

선생님 왜 오답인지 모르겠습니다..

359

ngc9203

18 asked

0

import java.util.Scanner;
public class Main {

public String solution(String str){
char[] chaArray = str.toCharArray();
int lt = 0;
int rt = str.length()-1;

while(lt < rt){
char temp = chaArray[lt];
if(Character.isLetterOrDigit(temp) == true){
chaArray[lt] = chaArray[rt];
chaArray[rt] = temp;
}
lt ++;
rt --;
}
return String.valueOf(chaArray);
}
public static void main(String[] args) {
Main main = new Main();
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println(main.solution(str));
}
}

처음에는 솔루션메서드 안에서 호출해도 안되서

main안에서 바로 출력해도 오답이라고 나오네요 계속...

java 코테 준비 같이 해요!

Answer 3

1

dgd030233980

앗! 선생님이 다른 글에 달아주신 예제가 반례내요!

input: "kj#$stpj" / output: "jp#$tsjk" 

제가 문제를 제대로 이해하지 못했던 것 같아요 감사합니다!

0

codingcamp

안녕하세요^^

주말에도 열심히 공부하시네요. 화이팅하세요!!

1

codingcamp

안녕하세요^^

반례입니다.

kdj#@kdjg%$#kdjgk@kd$dk

위에 입력으로 디버그해보세요.

0

dgd030233980

안녕하세요! 강의 잘 듣고 있습니다!

교수님 if (Character.isAlphabetic(charArray[lt]) && Character.isAlphabetic(charArray[rt])) 으로 좌측 값과 우측 값이 모두 알파벳이면 바꿔주는 방식으로 했는데 https://cote.inflearn.com/contest/10/problem/01-05 문제풀이 사이트에서 오답으로 나와서 혹시 반례가 있을까요?

import java.util.Scanner;

public class Main {
  
    public String solution(String string) {

        String answer = "";
        int lt = 0, rt = string.length() - 1;
        char[] charArray = string.toCharArray();

        while (lt < rt){
            if (Character.isAlphabetic(charArray[lt]) && Character.isAlphabetic(charArray[rt])){
                char temp = charArray[lt];
                charArray[lt] = charArray[rt];
                charArray[rt] = temp;
            }
            lt++;
            rt--;
        }

        answer = String.valueOf(charArray);

        return answer;
        
    }

    public static void main(String[] args) {

        Main T = new Main();
        Scanner scan = new Scanner(System.in);
        String input = scan.next();

        System.out.println(T.solution(input));

    }
}

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

0

19

1

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

0

19

1

문제 리스트 페이지

0

22

1

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

0

20

1

봉우리 문제 질문입니다

0

78

2

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

0

62

0

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

0

70

0

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

0

67

1

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

0

83

2

6-7 강의에서

0

47

1

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

0

43

1

강의 수강후 코딩테스트

0

106

1

answer 변수 사용 여부

0

42

1

2중 for문

1

83

2

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

0

62

1

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

0

68

1

이런 풀이는 어떨까요

0

42

1

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

0

55

1

알고리즘 자료 구조들..

0

60

1

StringBuilder vs BufferdWriter

0

47

1

원더랜드(프림)

0

47

1

이런 코드는 어떤가요?

0

59

1

bfs 풀이

0

55

1

병합정렬

0

55

1