-
[BOJ / C++] 1254번 : 팰린드롬 만들기Study (etc)/Problem Solving 2023. 1. 27. 10:51
문제
동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다.
동호는 규완이를 위한 깜짝 선물을 준비했다. 동호는 규완이가 적어놓고 간 문자열 S에 0개 이상의 문자를 문자열 뒤에 추가해서 팰린드롬을 만들려고 한다. 동호는 가능하면 가장 짧은 문자열을 만들려고 한다.
동호가 만들 수 있는 가장 짧은 팰린드롬의 길이를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 최대 50이다.
출력
첫째 줄에 동호가 만들 수 있는 가장 짧은 팰린드롬의 길이를 출력한다.
Solved.ac 레벨
실버 II
풀이
#include <bits/stdc++.h> using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); string s; cin >> s; int len = s.size(); bool chk = true; for(int i = 0; i < len; i++){ chk = true; for(int j = i; j < len; j++){ if(s[j] != s[len - 1 - (j - i)]){ chk = false; break; } } if(chk){ cout << len + i << "\n"; break; } } return 0; }
1254번: 팰린드롬 만들기
동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는
www.acmicpc.net
'Study (etc) > Problem Solving' 카테고리의 다른 글
[BOJ / C++] 15651번 : N과 M (3) (0) 2023.01.27 [BOJ / C++] 15650번 : N과 M (2) (0) 2023.01.27 [BOJ / C++] 11478번 : 서로 다른 부분 문자열의 개수 (0) 2023.01.27 [BOJ / C++] 15649번 : N과 M (1) (0) 2023.01.24 [BOJ / C++] 1270번 : 전쟁 - 땅따먹기 (0) 2023.01.23