개발자 톡

연습문제 톡 [한양대 HCPC 2023] X marks the Spot

문제 풀이답안 조언 부탁드립니다.

등록일
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);

}



위와 같이 작성했는데, 테스트케이스에서는 정상작동하지만 오답처리가 되어 어떤 부분이 부족한 것인지 조언을 구하고 싶습니다.

#[한양대_HCPC_2023]_X_marks_the_Spot

이 카테고리의 톡 더보기