하 이문제 화난다...

 

[첫번째 생각]

 

#include 
#include 
#include 

int main(int argc, const char * argv[]) {
    
    char S[20];
    int T,R,i,j,k = 0;
    
    scanf("%d",&T);
    
    while(T > 0) {
        k = 0;
        scanf("%d %s",&R,S);
        
        char *P = (char*)malloc(sizeof(char) * R * strlen(S));
        for(i = 0; i < strlen(S); i++){
            for(j = 0; j < R; j++){
                P[k++] = S[i];
            }
        }
        for(i = 0; i < k; i++)
            printf("%c",P[i]);
        printf("\n");
        
        T—;
        free(P);
    }
    
    return 0;
}

 

[문제점 발생]

 

 

[두번째 생각]

#include 
#include 
#include 

int main(int argc, const char * argv[]) {
    
    char S[20];
    int T,R,i,j,k = 0;
    
    scanf("%d",&T);
    
    while(T > 0) {
        
        scanf("%d %s",&R,S);
        
        for(i = 0; i < strlen(S); i++){
            for(j = 0; j < R; j++){
                printf("%c",S[i]);
            }
        }
        printf("\n");
        T—;
    }
    
    return 0;
}

 

[훨씬 쉬운 코드]

몰라!ㅡㅡ

 

 

[결론]

k = 0;을 넣자.

백준은 어떻게든 stdout만 하면 된다, 분명히 나한테 p배열에 옮기라고 해놓고나서 ㅡㅡ 메모리초과는 뭔데 ㅡㅡ

+ Recent posts