반응형
내 풀이
n이 주어졌을 때 1부터 n까지의 합을 구하는 프로그램 작성
수학수식 사용 n(n+1)/2
T = int(input())
# 수학수식 사용
# n(n+1)/2
result = T*(T+1)/2
print(result)
결과: 틀림
정답
n = int(input())
print(n * (n + 1) // 2)
n = int(input())
print(sum(range(1, n + 1)))
틀린 이유
식은 맞았으나 연산자에 대한 지식이 부족했다.
/2와 //2와는 많은 점에서 틀리다.
현실적으로 보았을 때는 나누기 2가 무엇이 틀렸는가 싶지만 컴퓨터 상에는 float형 즉, 실수형의 데이터는 5를 나누면 2.5가 아니라 2.50000002이렇게 값이 나타나기 때문에 이점을 꼭 인지할 필요가 있다. 그렇기 떄문에 항상 시간과 관련된 것은 1초는 1000, 2초도 2000이런 방식으로 나타낸다.
이러한 것은 기초중에 기초이기에 꼭 기억해둘 필요가 있다.
고찰
연산자는 어떻게 있을까?
1. 산술 연산자
a + b # 덧셈
a - b # 뺄셈
a * b # 곱셈
a / b # 나눗셈 (결과가 float)
a // b # 몫 (정수 나눗셈)
a % b # 나머지
a ** b # 거듭제곱 (a의 b승)
2. 비교 연산자
a == b # 같다
a != b # 다르다
a < b # 작다
a <= b # 작거나 같다
a > b # 크다
a >= b # 크거나 같다
3. 할당 연산자
a = 5 # 기본 할당
a += 2 # a = a + 2와 같음
a -= 2 # a = a - 2와 같음
a *= 2 # a = a * 2와 같음
a /= 2 # a = a / 2와 같음
a //= 2 # a = a // 2와 같음
a %= 2 # a = a % 2와 같음
a **= 2 # a = a ** 2와 같음
4. 논리 연산자
a and b # 둘 다 참일 때만 참
a or b # 둘 중 하나만 참이어도 참
not a # a가 참이면 거짓, 거짓이면 참
연산자는 이러한 것이 있기 때문에 항상 시행착오없이 생각하도록 하자.
반응형
'Coding Test (코딩 테스트)' 카테고리의 다른 글
코딩테스트 8일차(2025.01.22) - 25314번(코딩은 체육과목 입니다) (0) | 2025.01.22 |
---|---|
코딩테스트 8일차(2025.01.22) - 25304번(영수증) (0) | 2025.01.22 |
코딩테스트 8일차(2025.01.22) - 10950번(A+B - 3) (0) | 2025.01.22 |
코딩테스트 7일차(2025.01.20) - 2739번(구구단) (0) | 2025.01.20 |
코딩테스트 6일차(2025.01.19) - 2480번(주사위 세개) (0) | 2025.01.20 |