twinparadox   5년 전

제가 지금 문제를 잘못 이해하고 있는지 모르겠습니다.

일단 제가 이해한 내용은 이렇습니다.

문제 조건을 천천히 살펴보니 (), []이 짝을 이루는지 확인해서

짝을 이루지 못하는 괄호가 하나라도 있으면 균형 잡힌 문장이 아닌 걸로 판단하는 것이라 봅니다.

그럼 여기서 의문이 드는게...

Help( I[m being held prisoner in a fortune cookie factory)].

해당 문장은 균형 잡힌 문장의 조건에서 벗어난 게 없는데 균형 잡힌 문장이 아니라고 되어 있군요..

제가 잘못 해석한 부분이 어느 부분인지.. 지적부탁드립니다.

chsun0303   5년 전

([)] 은 잘못된 괄호가 맞지않나요?

twinparadox   5년 전

@chsun0303

  • 모든 왼쪽 소괄호("(")는 오른쪽 소괄호(")")와만 짝을 이룰 수 있다.
  • 모든 왼쪽 대괄호("[")는 오른쪽 대괄호("]")와만 짝을 이룰 수 있다.
  • 모든 오른쪽 괄호들은 자신과 짝을 이룰 수 있는 왼쪽 괄호가 존재한다.
  • 모든 괄호들의 짝은 1:1 매칭만 가능하다. 즉, 괄호 하나가 둘 이상의 괄호와 짝지어지지 않는다.
  • 모든 괄호들이 제대로 짝을 이룰 때, 해당 문자열은 균형이 잡힌것으로 간주된다.

이 조건 중 어느 부분이 그 괄호가 잘못된 건지 설명해주나요.

괄호의 순서도 다뤄지나요?

chsun0303   5년 전

https://www.acmicpc.net/proble...

저느 이 문제를 풀 때 2504번의 "예를 들어 ‘(()[[]])’나 ‘(())[][]’ 는 올바른 괄호열이지만 ‘([)]’ 나 ‘(()()[]’ 은 모두 올바른 괄호열이 아니다. "이 부분을 예제 입력과 예제출력으로 설명했다고 받아들였고, 괄호에 순서가 있다고 인지를 했습니다만..

twinparadox님 말대로 위 5가지의 조건에서는 괄호의 순서에 대한 별다른 언급이 없군요.

jh05013   5년 전

마지막 조건이 오역되었습니다.

"짝을 이루는 두 괄호가 있을 때, 그 사이에 있는 문자열도 균형이 잡혀야 한다."가 올바른 번역입니다.

twinparadox   5년 전

앗.. 아아....

chsun0303   5년 전

여기에 질문하는것이 맞는지는 모르겠으나, @jh05013 님 질문있습니다.

저는 문제를 풀 때 주어진 예제 입출력 역시 문제에 대한 설명으로 생각을 하는데 이렇게 생각하는 것이 맞는 방법인가요?

timeparadox님의 말대로 문제의 설명과 다른 입출력이 주어질 수도 있겠다는 생각이 들었습니다.

chsun0303   5년 전

앗 아니 twinparadox님...(..)

jh05013   5년 전

예제는 말 그대로 예시이므로 풀이에 필요한 모든 것이 문제 설명에서 주어져야 한다고 생각합니다. 이 문제는 원래 외국에서 영어로 출제된 문제인데, 원문에는 "For every pair of corresponding left and right brackets, the substring between them is balanced."라고 되어 있어서 ([)]가 올바르지 않은 문자열임을 알 수 있었습니다. 이 조건이 오역되면서 사라졌습니다.

이렇게 오역의 문제가 있어서 번역 시스템은 잠시 문을 닫은 상태이고, 검증된 유저만 번역할 수 있도록 개편하실 계획이라고 합니다.

twinparadox   5년 전

한번만이라도 우상단의 언어 설정을 봤으면 이러지 않았을텐데 말입니다.

chsun0303   5년 전

오 그렇군요. 감사합니다!

문제에 주어진 입출력을 의심해본적은 없었는데 twinparadox님도 감사드립니다.

댓글을 작성하려면 로그인해야 합니다.