본문 바로가기
OLD_알고리즘/Programmers - 알고리즘

Programmers ] Level 1 - 정수 제곱근 판별

by 달승 2021. 1. 7.

 

 

:: 시간 초과 발생한 코드

#include <string>
#include <vector>

using namespace std;

long long solution(long long n) {
    long long answer = 0;
    long long countN = 0;
    
    for(int i = 1; i <= n; i++){
        if(i * i == n){
            countN = i + 1;
            answer = countN * countN;
            break;
        }else{
            answer = -1;
        }
    }
    
    return answer;
}

 

:: 18번만 틀린 코드

 for(long long i = 1; i < n; ++i){

으로 변경하니까 18번만 틀림.

 

>>>

    Q. 18번이 틀린 이유?

* 테스트 케이스 18번은 입력값 1일 때의 상황인거 같습니다.

 

for( long long i = 1; i <= n; ++i ) {  ....  }

처럼 바꾸니까 모두 정답처리 됨.

 

 

🌱 정답코드

 

 

댓글