ENCRYPT 왜 오답이 나오는지..ㅠㅠ

  • leesangwon5911
    leesangwon5911
    #include<stdio.h>
    #include<string.h>
    
    int main(void)
    {
     int a;
     scanf("%d",&a);
     while(a--)
     {  
        char string[101];
        char buf[101];
        int i=0;
        int a=0;
    
        scanf("%s",string);
        while(string[2*i+1]!='\0')
        {
           buf[i]=string[2*i+1];
           i++;
        }
        i=0;
        while(string[2*i]!='\0')
        {
           string[i]=string[2*i];
           i++;
        }
        while(string[i]!='\0')
        {
         string[i]=buf[a];
         i++;
         a++;
        }
         printf("%s",string);
    
    
     }
       return 0;
    }
    

    먼저 string 배열과 buf 배열을 선언하여 string배열에 문자열을 입력받습니다. 그후 string배열의 (2*i+1)이 '\0'일때까지 buf[i]에 저장합니다. 그후 i를 0으로 초기화 해준후

    string[2*i]가 '\0'일때 까지 string[i]=string[2*i]이런식으로 넣어줍니다.

    그후 '\0'이 나오면 증가된 i가 다음 buf에 저장된 값들이 들어갈 string의 첫번째 인덱스가 됩니다.

    그 i를 가지고 buf에 저장된 값을 string[i]=buf[a]로 넣어줍니다.


    5년 전
1개의 댓글이 있습니다.
  • leesangwon5911
    leesangwon5911

    \n이 문제였군...;;;


    5년 전 link
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.