문자열(6)
-
[BOJ 10453] 문자열 변환
- 문제 요약 1. ab는 좋은 문자열이다. 2. 만약 문자열 [S]가 좋은 문자열이라면, 오른쪽과 왼쪽 끝에 각각 a와 b를 추가한 문자열 a[S]b 또한 좋은 문자열이다. 3. 만약 문자열 [S]와 [T]가 좋은 문자열이라면 이들을 붙여 쓴 [S][T] 또한 좋은 문자열이다. 첫 줄에 테스트 케이스의 수 T가 주어진다. 각각의 테스트 케이스마다, 한 줄에 문자열 A, B가 공백으로 분리되어 주어진다. (2문자열 A를 '인접한 두 문자를 서로 바꾸는' 연산을 통해 문자열 B로 바꾸려고 한다. 이때 필요한 연산의 최소 횟수를 구하는 프로그램을 작성하시오. A를 B로 바꾸는 중에 나타나는 문자열도 모두 좋은 문자열이어야 한다. - 알고리즘 정리 문자열 A에서 인접한 두 문자를 서로 바꾸는 연산을 통해 문..
2024.11.19 -
[BOJ 1294] 문자열 장식
https://www.acmicpc.net/problem/1294 1294번: 문자열 장식 첫째 줄에 단어의 개수 N이 주어진다. N은 최대 20이다. 둘째 줄부터 N개의 줄에 단어가 주어진다. 단어는 최대 1,000글자이고, 공백은 없이 알파벳 대문자로만 구성되어 있다. www.acmicpc.net - 문제 요약 오민식은 단어 N(Ns2+s1); } }; int n; string s; priority_queuepq; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin>>n; while(n--){ cin>>s; pq.push(s); } while(!pq.empty()){ string Top=pq.top(); pq..
2023.02.24 -
[BOJ 24978] Subset Equality
https://www.acmicpc.net/problem/24978 24978번: Subset Equality The cows are trying out a new method of exchanging coded messages with each-other where they mix irrelevant letters in among relevant letters to make the messages hard to decode. The cows transmit two strings $s$ and $t$ each of length at most $10^5$ consi www.acmicpc.net - 문제 요약 소들은 암호화된 메시지를 교환하는 새로운 방법을 시도해보고 있습니다. 그들은 메시지 해독을 어렵게 ..
2023.02.17 -
[BOJ 24979] COW Operations
https://www.acmicpc.net/problem/24979 24979번: COW Operations Bessie finds a string $s$ of length at most $2 \cdot 10^5$ containing only the three characters 'C', 'O', and 'W'. She wants to know if it's possible to turn this string into a single 'C' (her favorite letter) using the following operations: 1. Choose two www.acmicpc.net - 문제 요약 첫 번째 줄에는 문자열 S가 입력됩니다. 두 번째 줄에는 정수 Q가 주어집니다. (1>r; arrayc..
2023.02.06 -
[BOJ 15927] 회문은 회문아니야!!
https://www.acmicpc.net/problem/15927 15927번: 회문은 회문아니야!! 팰린드롬이란 앞으로 읽으나 뒤로 읽으나 같은 문자열을 말한다. 팰린드롬의 예시로 POP, ABBA 등이 있고, 팰린드롬이 아닌 것의 예시로 ABCA, PALINDROME 등이 있다. 같은 의미를 가지는 여러 단어들을 www.acmicpc.net - 문제 요약 알파벳 대문자로 이루어진 문자열이 주어졌을 때, 팰린드롬이 아닌 가장 긴 부분 문자열의 길이를 구해 보자. 이때 부분 문자열을 이루는 글자는 연속해야 한다. 팰린드롬이 아닌 부분 문자열이 없다면 -1을 출력한다. - 알고리즘 정리 우선 가장 긴 팰린드롬을 만들기 위해서는 문자열의 양 끝 문자가 달라야 합니다. Tast case 2를 예로 들면 "P..
2021.07.15 -
[BOJ 15886] 내 선물을 받아줘 2
https://www.acmicpc.net/problem/15886 15886번: 내 선물을 받아줘 2 욱제는 구사과의 열렬한 팬이다. 오늘 욱제는 구사과에게 선물()을 전달해주려고 한다. 지난 며칠간의 관찰 끝에 욱제는 구사과의 이동 패턴을 모두 파악했다. 구사과가 있는 곳은 1×N 크기의 직 www.acmicpc.net - 문제 요약 문자열의 길이 n, 길이 n인 문자열이 한 개 주어진다. 문자열은 E, W로 이루어져 있고, 이 문자열 위 어떤 부분에 선물을 놓았을 때 그걸 구사과가 가져가도록 해야 한다. 구사과는 문자열 위에서 움직일 수 있는데 E는 앞으로 한 칸, W는 뒤로 한 칸 가는 것을 의미한다. 시작 위치에 상관 없이 최소 몇 개의 칸 위에 선물을 놓아야 구사과가 선물을 가져갈 수 있는가?..
2021.06.08