문제
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두 글자를 반환하면 됩니다.
제한사항
- s는 길이가 1 이상, 100 이하인 스트링입니다.
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/12903
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이[c++]
#include <string>
using namespace std;
string solution(string s) {
string answer = "";
int mid = s.length()/2;
answer=s.length()%2?s.substr(mid,1):s.substr(mid-1,2);
return answer;
}
숫자 길이가 짝수일 때와 홀수일 때가 다르다.
길이가 홀수, 예를 들어 5일 경우 5/2 == 2
길이가 짝수, 예를 들어 6일 경우 6/2 == 3
문자열은 0부터 시작하므로 홀수는 길이에서 나누기 2 한 값에서 1개를 , 짝수는 나누기 2 한 값에서 -1 한 값에서 2개를 끌어온다.
'c++ > 프로그래머스 1 Lv' 카테고리의 다른 글
[프로그래머스] 내적 (0) | 2023.08.25 |
---|---|
[프로그래머스] 수박수박수박수박수박수? (0) | 2023.08.25 |
[프로그래머스] 제일 작은 수 제거하기 (0) | 2023.08.24 |
[프로그래머스] 없는 숫자 더하기 (0) | 2023.08.24 |
[프로그래머스] 핸드폰 번호 가리기 (0) | 2023.08.24 |