연습문제
[한양대 HCPC 2023] Yeah, but How?
- 난이도
- Lv. 2
- 제출
- 2,550 회
- 참가자
- 1,460 명
- 정답률
- 60.02 %
- 지원 언어
-
JavaJavaScriptC#C++CPythonKotlinSwiftGoRust
로그인 후 문제풀이가 가능합니다.
언어별 시간/메모리
| 언어 | 시간 | 메모리 |
|---|---|---|
| JavaScript | 5초 | 1024MB |
| Java | 3초 | 1024MB |
| Python | 5초 | 1024MB |
| Kotlin | 3초 | 1024MB |
| C | 1초 | 1024MB |
| C++ | 1초 | 1024MB |
| Swift | 1초 | 1024MB |
| C# | 3초 | 1024MB |
| Go | 1초 | 1024MB |
| Rust | 1초 | 1024MB |
(와 )로만 이루어진 문자열 가 아래 조건을 충족하면, 이를 균형 잡힌 괄호 문자열이라고 한다.
- 에
1과+를 원하는 위치에 적절히 추가해서 제대로 된 수식을 만들 수 있다. - 예로,
(()())는 등의 수식을 만들 수 있으므로 균형 잡힌 괄호 문자열이다. - 하지만,
())(는1과+를 어떻게 넣어도 제대로 된 수식을 만들어 낼 수 없으므로 균형 잡힌 괄호 문자열이 아니다.
- 예로,
여기서, 제대로 된 수식은 다음과 같이 정의된다.
- 은 제대로 된 수식이다.
- 과 가 제대로 된 수식이라면, 두 수식을 더하는 도 제대로 된 수식이다.
- 가 제대로 된 수식이라면, 수식에 괄호를 씌운 도 제대로 된 수식이다.
세훈이는 이 정의에 궁금증을 가지고, 균형 잡힌 괄호 문자열이 주어질 때 수식을 직접 만들어 보기로 했다.
제약조건
입력형식
첫 번째 줄에 균형 잡힌 괄호 문자열 가 주어진다.
출력형식
첫 번째 줄에 주어진 괄호 문자열로 만들 수 있는 수식 를 출력한다.출력되는 수식 는 다음 조건을 충족해야 한다.
- 수식의 길이는 이하여야 한다.
- 는 제대로 된 수식이어야 한다.
- 에서
(와)만 남기면 가 만들어져야 한다. - 는
(,),1,+로만 이루어져야 한다. 특히, 수식의 중간에 공백 등의 문자가 들어가면 안 된다.
입력 조건 내에서, 위 조건을 충족하는 수식을 만들 수 있음을 증명할 수 있다.
가능한 수식이 여러 가지인 경우, 그중 아무거나 하나를 출력한다.
입력예제1
(()())
출력예제1
((1+1)+(1)+1)
입력예제2
()()()
출력예제2
(1)+(1)+(1)