Rylah's Study & Daily Life
[Programmers Level 1] 이상한 문자 만들기 본문
https://programmers.co.kr/learn/courses/30/lessons/12930
코딩테스트 연습 - 이상한 문자 만들기
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을
programmers.co.kr
- 이상한 문자 만들기
문제 설명
입출력 예 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
제한 사항- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
s | return |
"try hello world" | "TrY HeLlO WoRlD" |
"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 "TrY", "HeLlO", "WoRlD"입니다. 따라서 "TrY HeLlO WoRlD" 를 리턴합니다.
// Programmers Level 1. 이상한 문자 만들기
// https://programmers.co.kr/learn/courses/30/lessons/12930
#include <bits/stdc++.h>
using namespace std;
string solution(string s) {
string answer = "";
int cnt = 0;
for (int i = 0; i < s.size(); i++)
{
if (s[i] == ' ')
{
cnt = 0;
answer += s[i];
continue;
}
if (cnt % 2 == 0)
{
if (s[i] >= 'a' && s[i] <= 'z')
answer += (s[i] - 32);
else
answer += s[i];
cnt++;
}
else
{
if (s[i] >= 'A' && s[i] <= 'Z')
answer += (s[i] + 32);
else
answer += s[i];
cnt++;
}
}
return answer;
}
int main(void)
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
string str = "try hello world";
cout << solution(str) << '\n';
return 0;
}
정확성 테스트
테스트 1 〉 | 통과 (0.01ms, 4.32MB) |
테스트 2 〉 | 통과 (0.01ms, 4.33MB) |
테스트 3 〉 | 통과 (0.01ms, 4.33MB) |
테스트 4 〉 | 통과 (0.02ms, 4.25MB) |
테스트 5 〉 | 통과 (0.01ms, 4.28MB) |
테스트 6 〉 | 통과 (0.01ms, 4.27MB) |
테스트 7 〉 | 통과 (0.01ms, 4.32MB) |
테스트 8 〉 | 통과 (0.01ms, 4.32MB) |
테스트 9 〉 | 통과 (0.01ms, 3.66MB) |
테스트 10 〉 | 통과 (0.01ms, 4.26MB) |
테스트 11 〉 | 통과 (0.01ms, 4.33MB) |
테스트 12 〉 | 통과 (0.01ms, 4.27MB) |
테스트 13 〉 | 통과 (0.02ms, 3.66MB) |
테스트 14 〉 | 통과 (0.01ms, 4.27MB) |
테스트 15 〉 | 통과 (0.01ms, 4.32MB) |
테스트 16 〉 | 통과 (0.01ms, 3.66MB) |
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
'Programmers > Level 1' 카테고리의 다른 글
[Programmers Level 1] 시저 암호 (0) | 2022.01.09 |
---|---|
[Programmers Level 1] 약수의 합 (0) | 2022.01.09 |
[Programmers Level 1] 자릿수 더하기 (0) | 2022.01.09 |
[Programmers Level 1] 자연수 뒤집어 배열로 만들기 (0) | 2022.01.09 |
[Programmers Level 1] 정수 내림차순으로 배치하기 (0) | 2022.01.09 |