알고리즘 & 자료구조/코딩테스트

[프로그래머스] 가운데 글자 가져오기

인디아나쥰이 2021. 2. 3. 14:29

문제 설명

 

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

재한사항

  • s는 길이가 1 이상, 100이하인 스트링입니다.

입출력 예

 s                                                                                                     return

abcde c
qwer we

 

간단한 문제였다.

더보기

나같은 경우는 홀수인 경우 와 짝수인 경우로 나눠서 그에 따른 

문자 혹은 문자열 추출 방법을 구현해줬다.

하지만 다른분이 제출한 답을 보니 한줄만에도 구현이 가능한듯 하다.(참고하시길)

 

#include <string>
#include <vector>
#include <iostream>

using namespace std;

string solution(string s) {
    string answer = "";

    if(s.length() % 2 == 0) //짝수일때
    {
        for(int i = (s.length() / 2)-1; i <= (s.length()/2); i++)
        {
            answer = answer + s[i];
            
        }
    }
    else //홀수일때
    {
        answer = s[(s.length() / 2)];
    }
    
    return answer;
}

//코드 실행용
int main(void)
{   
    string s;
    cin >> s;

    cout << solution(s);
}
728x90
반응형