|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
char* solution(const char* code) {
char* answer = (char*)malloc(strlen(code)+1);
answer[0]='\0';
bool mode=0;
int j=0;
for(int i=0;i<strlen(code);i++) {
if(code[i]=='1') {
mode=!mode;
continue;
}
if(mode==0 && i%2==0) {
answer[j]=code[i];
j++;
}
else if(mode==1 && i%2!=0) {
answer[j]=code[i];
j++;
}
}
if(answer[0]=='\0')
answer="EMPTY";
else
answer[j]='\0';
return answer;
}
|
cs |
answer가 빈 문자열인 경우 "EMPTY"를 리턴하는 조건이 있으므로, 문자열 answer의 첫번째 원소에 널 문자를 저장한다.
이후 answer에 문자가 저장되지 않으면 answer[0]에 널 문자가 그대로 저장되어 있을 것이므로 조건문을 이용하여 answer에 "EMPTY"를 저장한다.
'C > 코딩 기초 트레이닝' 카테고리의 다른 글
| 마지막 두 원소 (1) | 2024.02.05 |
|---|---|
| 이어 붙인 수 (0) | 2024.02.05 |
| 더 크게 합치기 (0) | 2024.02.04 |
| 조건 문자열 (0) | 2024.01.12 |
| 문자 리스트를 문자열로 변환하기 (0) | 2024.01.12 |