1025번 - 제곱수 찾기
아래와 같은 코드로 통과는 했는데
void validate(int num){ // for (int i = (int)sqrt(num) - 1; i*i <= num; i++) for (int i = (int)sqrt(num) - 1; i <= (int)sqrt(num) + 1; i++) if (i*i == num) if (num > ans) ans = num;}
이 부분에서 반복문 조건으로 i*i <= num 을 하면 통과하지 못하는 이유가 무엇인지 모르겠습니다
혹시 설명해주실 수 있는 분 있을까요?
제곱수가 0일때를 생각해보시면 될듯합니다.
댓글을 작성하려면 로그인해야 합니다.
dmzld 3년 전
아래와 같은 코드로 통과는 했는데
void validate(int num){
// for (int i = (int)sqrt(num) - 1; i*i <= num; i++)
for (int i = (int)sqrt(num) - 1; i <= (int)sqrt(num) + 1; i++)
if (i*i == num)
if (num > ans) ans = num;
}
이 부분에서 반복문 조건으로 i*i <= num 을 하면 통과하지 못하는 이유가 무엇인지 모르겠습니다
혹시 설명해주실 수 있는 분 있을까요?