안녕 세상아,

[프로그래머스/c++] LV1 정수 제곱근 판별 C++ 풀이 본문

프로그래머스

[프로그래머스/c++] LV1 정수 제곱근 판별 C++ 풀이

돈 많은 백수가 되고싶다 2024. 7. 29. 19:41

https://school.programmers.co.kr/learn/courses/30/lessons/12934#

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

테스트 케이스 다 맞고 내가 추가해서 코드실행 결과 다 맞았는데 자꾸 제출하면 틀려,,,ㅠ

시간초과 되는 것도 아니고 72점 자꾸 받길래 납득 안되고있었는데 

결론: int -> long long으로 바꿔야함..

#include <string>
#include <vector>
#include <cmath>

using namespace std;

long long solution(long long n) {
    long long answer = 0;
    
    long long a=sqrt(n);
    if(a*a==n){
        answer = pow(a+1,2);
    }
    else
        answer = -1;
    
    return answer;
}

삽질을 얼마나 한건지ㅜㅜ....그래도 풀었으면 됐다. 자료형 제대로 잘 맞추기..

 

sqrt => 루트

pow => 제곱근