ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Python] 2420번 : 사파리월드 (절대값 구하기)
    Coding Test/백준 2024. 12. 7. 01:49

    문제
    사파리월드는 인터넷으로만 존재하는 미스테리한 나라이다. 
    사파리월드에는 2개의 서브도메인이 seunghwan.royal.gov.sw와 kyuhyun.royal.gov.sw 이 있는데, 
    이것이 couple.royal.gov.sw으로 합쳐질 것이다. 그러나 도메인 관리 센터 SWNIC(센터장: 김동규)에는 엄격한 룰이 있다. 
    두 서브도메인을 합칠 때, 유명도의 차이가 너무 차이나지 않을 경우에만 두 서브도메인을 결혼시키는 것이다. 

    서브도메인의 유명도는 정수이다. 
    두 서브도메인의 유명도가 주어졌을 때, 그 차이를 구하는 프로그램을 작성하시오.

    입력
    첫째 줄에 두 도메인의 유명도 N과 M이 주어진다. (-2,000,000,000 ≤ N, M ≤ 2,000,000,000)

    출력
    첫째 줄에 두 유명도의 차이 (|N-M|)을 출력한다.

    예제 입력 1 
    -2 5
    예제 출력 1 
    7


     

    첫번째 풀이

    n, m = map(int, input().split())
    
    result = n - m
    
    if result > 0:
        print(result)
    else:
        print(-(result))

     

    절대값 함수를 몰라 직관적으로 if 문을 이용해서 풀었다.

     

    지피티 한테 물어보니 abs() 라는 절대값을 구해주는 파이썬 기본 내장 함수가 있다.

     


     

    두번째 풀이

    n, m = map(int, input().split())
    
    result = n - m
    
    print(abs(result))

     

    abs() 함수를 이용하여 코드를 작성했다.

     

    근데 문득 result = abs(n - m) 으로 작성하는 것과

     

    마지막에 print(abs(result)) 이런식으로 작성하는 것의 차이가 뭔지 궁금했다.

     

    다시 지피티에게 질문..

     

    1. result = abs(n - m)

    적합한 상황:

    절대값 결과를 이후에 재사용해야 할 경우 적합합니다.

    예를 들어, 절대값 계산 후 다른 연산에 사용할 계획이 있는 경우.

     

    2. print(abs(n - m))

    적합한 상황:

    절대값 결과를 한 번만 출력하고, 이후 재사용할 필요가 없을 때 적합합니다.

     

     

    라는 대답

     

    따라서 한번 코드 돌릴때는 뭐든 상관없을 것 같다.

    'Coding Test > 백준' 카테고리의 다른 글

    [Python] 10872번 : 팩토리얼  (4) 2024.12.07
    [Python] 2741번 : N 찍기  (2) 2024.12.07
    [Python] 오븐시계  (6) 2024.12.04
    [JAVA] 2차원 배열 입력받기  (0) 2023.03.28
    [JAVA] 문자열을 배열로 변환하기  (3) 2023.03.27

    댓글

Designed by Tistory.