(알고스팟) PALINDROMIZE (팰린드롬 만들기)

https://algospot.com/judge/problem/read/PALINDROMIZE


 int palindromize(const string& a, const string& b)
{
int n = a.size();
int m = b.size();
int begin = 0;
int matched = 0;
vector<int> pi = getPartialMatch(b);
while (begin < n)
{
if (a[begin + matched] == b[matched]){
matched++;
if (begin + matched == n)
return matched;
}
else{
if (matched == 0)
++begin;
else{
begin += matched- pi[matched - 1];
matched = pi[matched - 1];
}
}
}
return 0;
}

댓글

이 블로그의 인기 게시물

(네트워크)폴링방식 vs 롱 폴링방식

(ElasticSearch) 결과에서 순서 정렬

(18장) WebSocekt과 STOMP를 사용하여 메시징하기