Skip to content

Commit 2ec3499

Browse files
committed
[level 0] Title: 문자열 여러 번 뒤집기, Time: 229.65 ms, Memory: 399 MB -BaekjoonHub
1 parent 741b19d commit 2ec3499

2 files changed

Lines changed: 127 additions & 0 deletions

File tree

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# [level 0] 문자열 여러 번 뒤집기 - 181913
2+
3+
[문제 링크](https://school.programmers.co.kr/learn/courses/30/lessons/181913)
4+
5+
### 성능 요약
6+
7+
메모리: 399 MB, 시간: 229.65 ms
8+
9+
### 구분
10+
11+
코딩테스트 연습 > 코딩 기초 트레이닝
12+
13+
### 채점결과
14+
15+
정확성: 100.0<br/>합계: 100.0 / 100.0
16+
17+
### 제출 일자
18+
19+
2026년 03월 27일 17:25:11
20+
21+
### 문제 설명
22+
23+
<p>문자열 <code>my_string</code>과 이차원 정수 배열 <code>queries</code>가 매개변수로 주어집니다. <code>queries</code>의 원소는 [s, e] 형태로, <code>my_string</code>의 인덱스 s부터 인덱스 e까지를 뒤집으라는 의미입니다. <code>my_string</code>에 <code>queries</code>의 명령을 순서대로 처리한 후의 문자열을 return 하는 solution 함수를 작성해 주세요.</p>
24+
25+
<hr>
26+
27+
<h5>제한사항</h5>
28+
29+
<ul>
30+
<li><code>my_string</code>은 영소문자로만 이루어져 있습니다.</li>
31+
<li>1 ≤ <code>my_string</code>의 길이 ≤ 1,000</li>
32+
<li><code>queries</code>의 원소는 [s, e]의 형태로 0 ≤ s ≤ e &lt; <code>my_string</code>의 길이를 만족합니다.</li>
33+
<li>1 ≤ <code>queries</code>의 길이 ≤ 1,000</li>
34+
</ul>
35+
36+
<hr>
37+
38+
<h5>입출력 예</h5>
39+
<table class="table">
40+
<thead><tr>
41+
<th>my_string</th>
42+
<th>queries</th>
43+
<th>result</th>
44+
</tr>
45+
</thead>
46+
<tbody><tr>
47+
<td>"rermgorpsam"</td>
48+
<td>[[2, 3], [0, 7], [5, 9], [6, 10]]</td>
49+
<td>"programmers"</td>
50+
</tr>
51+
</tbody>
52+
</table>
53+
<hr>
54+
55+
<h5>입출력 예 설명</h5>
56+
57+
<ul>
58+
<li>예제 1번의 <code>my_string</code>은 "rermgorpsam"이고 주어진 <code>queries</code>를 순서대로 처리하면 다음과 같습니다.</li>
59+
</ul>
60+
<table class="table">
61+
<thead><tr>
62+
<th>queries</th>
63+
<th>my_string</th>
64+
</tr>
65+
</thead>
66+
<tbody><tr>
67+
<td></td>
68+
<td>"rermgorpsam"</td>
69+
</tr>
70+
<tr>
71+
<td>[2, 3]</td>
72+
<td>"remrgorpsam"</td>
73+
</tr>
74+
<tr>
75+
<td>[0, 7]</td>
76+
<td>"progrmersam"</td>
77+
</tr>
78+
<tr>
79+
<td>[5, 9]</td>
80+
<td>"prograsremm"</td>
81+
</tr>
82+
<tr>
83+
<td>[6, 10]</td>
84+
<td>"programmers"</td>
85+
</tr>
86+
</tbody>
87+
</table><div class="highlight"><pre class="codehilite"><code>따라서 "programmers"를 return 합니다.
88+
</code></pre></div>
89+
90+
> 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
class Solution {
2+
public String solution(String my_string, int[][] queries) {
3+
String answer = "";
4+
5+
int length = my_string.length();
6+
7+
for( int[] q : queries){
8+
int s = q[0];
9+
int e = q[1];
10+
11+
String tmp = "";
12+
for(int i=e; i>=s; i--){
13+
tmp += my_string.charAt(i);
14+
}
15+
16+
String tmp1 ="";
17+
18+
for(int i=0; i<s; i++){
19+
tmp1 += my_string.charAt(i);
20+
}
21+
22+
tmp1 += tmp;
23+
24+
for(int i=e+1; i<length; i++ ){
25+
tmp1 += my_string.charAt(i);
26+
}
27+
28+
my_string = "";
29+
my_string += tmp1;
30+
31+
}
32+
33+
answer = my_string;
34+
35+
return answer;
36+
}
37+
}

0 commit comments

Comments
 (0)