https://www.acmicpc.net/problem/1254 1254번: 팰린드롬 만들기 동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는 www.acmicpc.net 문자열 S를 받아 해당 문자열에서 N개의 문자를 추가하여 팰린드롬을 만드는 문제이다. 단, S의 길이는 최소로 해야한다. 우선 임의의 문자열에서 팰린드롬을 만들 수 있는 방법은 무엇이 있을까? abab : a만 추가하면 된다. abbb : a만 추가하면 된다. aabb : a를 2개 추가해야한다. abba : 그 자체로 팰린드롬 팰린드롬을 만드는 규칙이 있을까? 길이를 반으로 나누어 문자를 추가하고 합..
https://www.acmicpc.net/problem/1544 1544번: 사이클 단어 사이클 단어는 어떤 단어를 원형 모양으로 차례대로 쓴 것이다. 따라서, 어떤 단어를 이렇게 쓴 후에 임의의 단어를 고른다. 그 후에 시계방향으로 차례대로 읽으면 그 것이 단어가 된다. 만약에 www.acmicpc.net 어떻게 풀어야 할지 감이 안 잡혀서 문제 태그를 보았다. 해시 테이블을 사용하는 것을 알고 감을 잡을 수 있었다. - 풀이- 1. 입력 받은 단어를 해시 테이블에서 검색한다. (set 사용) 2. 검색한 단어가 존재하지 않는다면 해당 문자열을 원형 큐처럼 돌리며 모든 경우를 해시 테이블에 넣어놓는다. 2-1. 정답 카운트를 1 늘린다. #include #define ll long long using..