Check if input string is palindrome or not
입력받는 문자가 회문(수박이박수) 인지 확인한다
//Process
//1. Input string for checking
//2. Iterate from the front char and the rear char are the same && till they meet
// 2.1. Update front and rear char
//3. Get the answer and output it
//처리과정
//1. 체크할 문자 입력받는다.
//2. 앞에서, 뒤에서 문자 읽어서 같아야 하고, 중간에서 만나기 전까지 반복한다.
// 2.1. 체크할 앞 뒤 문자 갱신한다.
//3. 끝까지 왔으면 답은 true 로 출력한다.
bool checkPalindrome(std::string inputString) {
bool answer = false;
int length = inputString.length();
int front = 0;
int rear = length - 1;
char frontChar = inputString.at(front);
char rearChar = inputString.at(rear);
while (front < rear && frontChar == rearChar) {
frontChar = inputString.at(front+1);
rearChar = inputString.at(rear-1);
front++;
rear--;
}
if (front >= rear && inputString.at(front) == inputString.at(rear)) {
answer = true;
}
return answer;
}
2018/09/16 - [Algorithm/Code Signal (Code Fights)] - Aracade Intro #2 CenturyFromYear
2018/09/16 - [Algorithm/Code Signal (Code Fights)] - Aracade Intro #1 Add
'Algorithm > Code Fights (Code Signal)' 카테고리의 다른 글
Aracade Intro #6 MakeArrayConsecutive2 (0) | 2018.09.22 |
---|---|
Aracade Intro #5 ShapeArea (0) | 2018.09.21 |
Aracade Intro #4 AdjacentElementsProduct (0) | 2018.09.19 |
Aracade Intro #2 CenturyFromYear (0) | 2018.09.16 |
Aracade Intro #1 Add (0) | 2018.09.16 |