알고리즘/HackerRank
[해커랭크] Game of Thrones - I (C++)
라이언납시오
2021. 3. 11. 18:41
728x90
반응형
Game of Thrones - I | HackerRank
Check whether any anagram of a string can be a palindrome or not.
www.hackerrank.com
1. 주의할 점
- 팰린드롬을 직접 만들려고 하지 않는다
2. 구현
- 파라미터로 넘겨받은 S에 포함된 문자들의 수를 Alpha[] 배열에 갱신한다
- Alpha[] 배열의 값이 홀수인 경우, 팰린드롬을 생성할 때 무조건 가운데에 위치해야 하므로 홀수인 문자의 수는 1개만 있어야 한다
- 홀수인 문자가 2개 이상이면 NO를 리턴한다
- 이외의 경우엔 YES를 리턴한다
int alpha[26];
// Complete the gameOfThrones function below.
string gameOfThrones(string s) {
for(int i=0;i<s.size();i++){
char c = s[i];
alpha[c-'a']++;
}
bool avail=true;
bool odd = false;
for(int i=0;i<26;i++){
if(alpha[i]%2==1){
if(odd) return "NO";
else odd=true;
}
}
return "YES";
}
728x90
반응형