본문 바로가기

백준

6539 만취한 상범

문제 보고 미쳤다 싶었다. 상범아.. 

내용이 그렇지만 문제는 풀만했다. 

저 1, 2, 3은 생각의 흐름.. ㅎㅎ 

조금 신경쓰이는건 저렇게 sqrt 사용해도 되나?? (실수라서) 그것 말고는 스무-스하게 풀었다. 

 

#include <iostream>
#include <cmath>

using namespace std;

int main() {
    int t;
    double n;
    scanf("%d", &t);
    
    for(int i = 0; i < t; i++){
        scanf("%lf", &n);
        printf("%d\n", (int)sqrt(n));
    }
}

간단한 코드

 


+) sqrt를 쓸 때 10^15까지의 숫자는 문제없이 제곱근의 정수 값을 받을 수 있다고 한다(double을 쓸 때)

 

 

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int t;
    scanf("%d", &t);
    
    for(int i = 0; i < t; i++){
        double n;
        scanf("%lf", &n);
        printf("%d\n", (int)sqrt(n));
    }
}

 

이전에는 C언어 영향으로 double을 밖에 선언했는데 변수는 사용되는 범위 안에 생성해주는 게 좋다고 한다. 보면 double n은 for 문 안에만 사용되기 때문에 안에 선언해주는 것이 좋다. 

'백준' 카테고리의 다른 글

1373 2진수 8진수  (0) 2019.10.09
7567 그릇  (0) 2019.10.09
1037 약수  (0) 2019.10.09
1100 하얀칸  (0) 2019.10.08
1009 분산처리  (0) 2019.10.08