dlfemd   6년 전

코드는 아래와 같이 작성하였고,

0인경우 014 인경우 444인경우 테스트케이스 잘 돌아가는 것 같은데

무엇이 문제인지 궁금합니다!ㅠㅠㅠㅠㅠㅠㅠㅠㅠ더이상 틀리고 싶지않습니다..ㅠㅠㅠㅠㅠㅠㅠ


#include <cstdio>

#include <cstring>

using namespace std;

char st[333335],number[8][4]={"000","001","010","011","100","101","110","111"};

char number1[8][4]={"","1","10","11","100","101","110","111"};

bool flag;

int main(){

    scanf("%s",st);

    int lens = strlen(st);

    if(lens == 1 && st[0] == '0'){

        printf("000\n");

        return 0;

    }

    for(int i = 0; i < lens; i++){

        int cnt = st[i]-'0';

        if(i == 0 || (st[0]-'0' == 0 && !flag)) printf("%s",number1[cnt]);

        else if(i > 0) printf("%s",number[cnt]);

        if(st[0]-'0' == 0 && cnt >= 1) flag = true;

    }

    return 0;

}

djm03178   6년 전

0은 0이라고 쓰지, 000이라고 보통 안 쓰듯이, 이 문제도 "평범하게 쓰기"를 원하는 겁니다.

dlfemd   6년 전

앗!! 감사합니다 ㅠㅠ!!!!! 수정했습니다!!

댓글을 작성하려면 로그인해야 합니다.