개발자 톡
문제 풀이답안 조언 부탁드립니다.
- 등록일
- 2024-10-04 15:28:20
- 조회수
- 110
- 작성자
- strawberry3536
#include <stdio.h>
#include <ctype.h>
int main(void)
{
/**
* Variable
*/
int N; // Number of strings
char string_S[500000][100]; // String S
char string_T[500000][100]; // String S
char string_OUTPUT[100]; // String output
int X_Position[500000]; // Position of 'x' or 'X' in String S
int i, j; // Used in For, While loop
/**
* Input
*/
scanf("%d", &N);
for(i = 0; i < N; i++)
{
scanf("%s", string_S[i]);
scanf("%s", string_T[i]);
}
/**
* Logic
* - get x(or X) position in string S
* - Make string Output using x(or X) position and string T
*/
/* get x(or X) position in string S */
for(i = 0; i < N; i++)
{
j = 0;
while(string_S[i][j] != '\0')
{
if((string_S[i][j] == 'x') || (string_S[i][j] == 'X'))
{
X_Position[i] = j; // There is only one x(or X) in string_S
}
j++;
}
}
/* Make string Output using x(or X) position and string T */
for(i = 0; i < N; i++)
{
if(isdigit(string_T[i][X_Position[i]]))
{
string_OUTPUT[i] = string_T[i][X_Position[i]];
}
else
{
string_OUTPUT[i] = toupper(string_T[i][X_Position[i]]);
}
}
string_OUTPUT[N] = '\0';
/**
* Output
*/
printf("%s", string_OUTPUT);
}
위와 같이 작성했는데, 테스트케이스에서는 정상작동하지만 오답처리가 되어 어떤 부분이 부족한 것인지 조언을 구하고 싶습니다.