기초적인 부분이 약해서 학습을 따로 진행하고 있다.
알고리즘, 자료구조를 요구하는 코딩테스트를 잘 하고 싶다는 욕심이 생겼다.
두 수의 나눗셈
import math
def solution(num1, num2):
answer = (num1/num2)*1000
return math.floor(answer)
소숫점 부분을 날리고 정수부분만 요구하는 문제였는데 math 메소드를 추가하여 floor로 정수처리를 했다. 다른 풀이를 참고해보니
def solution(num1, num2):
return int(num1/num2*1000)
아래의 경우 int로 정수부분을 출력하게 하고 지역변수를 사용하지않고 자원을 아끼는 코드를 작성해서 참고했다.
그리고 정수를 살릴 때 floor와 trunc의 차이점은 음수의 반올림에서 차이가 났다
trunc같은 경우 소숫점만 버리고 그 숫자를 남기며 floor같은 경우 반올림하여 정수를 남겼다.
import math
x = math.floor(-2.54)
y = math.floor(-3.1235)
print(x)
print(y)
x = math.trunc(-2.54)
y = math.trunc(-3.1235)
print(x)
print(y)
//OutPut
-3
-4
-2
-3
참고사이트
https://codechacha.com/ko/python-remove-numbers-under-decimal-point/
def solution(num1, num2):
answer = 0
if num1==num2:
answer = 1
if num1!=num2:
answer = -1
return answer
처음에는 위와같이 if를 두번 사용하여 작성을 해봤다.
처음 배운 코드작성법이 js다 보니 if(num1===num2) 형태로 작성했는데 찾아보니 간단하게 :로 구별할 수 있었다.
def solution(num1, num2):
answer = 0
if num1==num2:
answer = 1
else:
answer = -1
return answer
else로도 동작하는 걸 확인할 수 있었다. 아직은 미숙하지만 차츰차츰 익혀나가는 중이다.