[C#] 이상한 문자
2020. 7. 27. 19:57ㆍ[C#] 코딩테스트 문제풀이
반응형
프로그래머스 문제
문제 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
제한 사항
- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
내 풀이
public class Solution {
public string solution(string s) {
char[] temp = s.ToCharArray();
int checker =0;
for(int i=0; i<temp.Length; i++)
{
if(temp[i]==' ')
{
checker =0;
continue;
}
else if(checker%2==0)
{
temp[i]=char.ToUpper(temp[i]);
}
else
{
temp[i]=char.ToLower(temp[i]);
}
checker++;
}
string answer =new string(temp);
return answer;
}
}
깨달은점: 많이 어려웠다 String형 배열을 ' '를 기준으로 Split하여 풀다가 방식을 바꿔보았다
char형 배열에 ' '을 만날시 ' '은 그대로 출력하며 다시 배열의 짝홀수를 계산하는 방법이 무었이 있을까 고민하다가
int checker라는 변수를 두고 ' '을 만날시 다시 0으로 초기화 해주었다.
시간이 좀 걸렸지만 깔끔하게 풀어낸거 같다.
반응형
'[C#] 코딩테스트 문제풀이' 카테고리의 다른 글
[C#] 문자열 리턴 함수 (0) | 2020.07.29 |
---|---|
[C#] 문자열을 정수로 바꾸기 (0) | 2020.07.28 |
[C#]자릿수 더하기 (0) | 2020.07.27 |
[C#]정수 내림차순으로 배치하기 (0) | 2020.07.27 |
[C#] 정수 제곱근 판별 (0) | 2020.07.27 |