khqwer   4년 전

진짜 한 10번쯤 시도한거 같은데 도대체 어디가 문제인걸까요?

결국 

BI checkNum(int* brokenList,int num) 

{

 bool test=true; 

 BI temps=std::make_pair(test,num); 

 while(num>0){ int temp=num%10; 

 for (int i = 0; i <10 ; ++i) { if(brokenList[i]<10 &&temp==brokenList[i])

 temps.first= false; return temps; } } 

 num/=10; } 

 return temps; }

이게 문제였네요...

아래처럼 바꾸니 해결됨

BI checkNum(int* brokenList,int num)
{

    bool test=true;
    BI temps=std::make_pair(test,num);
    if(num>0){
        while(num>0){
            int temp=num%10;
            for (int i = 0; i <10 ; ++i) {
                if(brokenList[i]<10 &&temp==brokenList[i]){
                    temps.first= false;
                    return temps;
                }
            }
            num/=10;
        }
    } else{
        for (int i = 0; i <10 ; ++i) {
            if(brokenList[i]==0) temps.first= false;
        }
    }


    return temps;
}

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