728x90
728x90
문제
N이 주어질 때, 원점을 중심으로 반지름이 N인 원 안에 포함되는 격자점($x, y$ 좌표가 모두 정수인 점)의 개수를 구하는 프로그램을 작성하라.
다시 말하자면, $x^{2}+y^{2}<=N^{2}$인 격자점의 개수를 구하는 프로그램을 작성하라.
입력
첫 번째 줄에 테스트 케이스의 수 T가 주어진다.
각 테스트 케이스의 첫 번째 줄에는 하나의 정수 N(1<=N<=200)이 주어진다.
출력
각 테스트 케이스마다 반지름이 N인 원 안에 포함되는 격자점의 개수를 출력한다.
예제
[입력] | [출력] |
3 1 10 100 |
#1 5 #2 317 #3 31417 |
문제 해결 방법
- @-x@부터 @x@, @-y@부터 @y@까지 숫자를 순회하면서 $x^{2} + y^{2} ≤ N^{2}$을 만족할 경우 카운팅 해주는 브루트 포스(Brute Force) 방식으로 문제를 해결하였다.
코드
T = int(input())
for test_case in range(1, 1 + T):
N = int(input())
count = 0
for x in range(-N, N + 1):
for y in range(-N, N + 1):
if pow(x, 2) + pow(y, 2) <= pow(N, 2):
count += 1
print(f"#{test_case} {count}")
참고
- 난이도: D3
728x90
728x90
'Problem Solving > SWEA' 카테고리의 다른 글
[SWEA-17319][Python] 문자열문자열 (0) | 2023.11.17 |
---|---|
[SWEA-1204][Python] [S/W 문제해결 기본] 1일차 - 최빈수 구하기 (1) | 2023.10.23 |
[SWEA-1284][Python] 수도 요금 경쟁 (1) | 2023.10.23 |
[SWEA-1285][C++] 아름이의 돌 던지기 (0) | 2023.10.23 |
[SWEA-1288][Python] 새로운 불면증 치료법 (1) | 2023.10.23 |
[SWEA-1928][Python] Base64 Decoder (0) | 2023.10.23 |
[SWEA-1940][Python] 가랏! RC카! (1) | 2023.10.19 |
[SWEA-1945][Python] 간단한 소인수분해 (1) | 2023.10.19 |