11653: 소인수분해
# 11653: 소인수분해
#
def prime_list(n):
sieve = [True] * n
m = int(n ** 0.5)
for i in range(2, m + 1):
if sieve[i] == True:
for j in range(i+i, n, i):
sieve[j] = False
return [i for i in range(2, n) if sieve[i] == True]
import sys
N = int(sys.stdin.readline())
prime = prime_list(N)
j = 0
while True :
if N in prime :
print(N)
break
elif N % prime[j] == 0 :
print(prime[j])
N = N // prime[j]
else :
j += 1
if N // prime[j] == 1 :
print(N)
break
##
def prime_list(n):
sieve = [True] * n
m = int(n ** 0.5)
for i in range(2, m + 1):
if sieve[i] == True:
for j in range(i+i, n, i):
sieve[j] = False
return [i for i in range(2, n) if sieve[i] == True]
import sys
N = int(sys.stdin.readline())
sqrt_n= int(N**0.5)
i = 2
while i < sqrt_n :
if N in prime_list(N) :
print(N)
if N % i == 0:
print(i)
N = N // i
else:
i += 1
if N // i == 1:
print(N)
break
### 최종 풀이
n = int(input())
i = 2
while n != 1 :
if n % i == 0 :
n = n / i
print(i)
else :
i += 1
이 문제에서 배운 점이 있다면, 선행 문제에 함수식을 그대로 사용하는 것이 아닌 문제 자체에서 고민하고 해결하는 것이 좋다는 점을 배웠습니다. 소인수분해 자체가 소수를 하나씩 나누어질때까지 지속해서 나누는 것이기 때문에 while 문 하나로 문제가 해결이 되었네요.
1085: 직사각형에서 탈출
# 1085: 직사각형에서 탈출
x, y, w, h = map(int, input().split())
print(min(h-y, x, y, w-x))
3009: 네 번째 점
# 3009: 네 번째 점
a = set()
b = set()
sum_x = 0
sum_y = 0
for _ in range(3) :
x, y = map(int, input().split())
sum_x += x
sum_y += y
a.add(x)
b.add(y)
result_x = 4 * (sum(list(a))/2) - sum_x
result_y = 4 * (sum(list(b))/2) - sum_y
print(int(result_x), int(result_y), sep = ' ')
이 문제는 이렇게 푸는 것보단 XOR : '^' 을 이용하여 푸는 것이 아주 현명합니다.
1^2^1
2를 출력합니다. 정말 쉽죠..? 전 귀찮게 방정식으로 풀었네요 ㅠㅠ
4153: 직각삼각형
# 4153: 직각삼각형
while True:
a = list(map(int, input().split()))
max_num = max(a)
if sum(a) == 0:
break
a.remove(max_num)
if a[0] ** 2 + a[1] ** 2 == max_num ** 2:
print('right')
else:
print('wrong')
**이 제곱입니다. 문제 조건때문에 쉽게 풀었던 것 같습니다.
기본 수학 파트 들어오고나서 하루안에 풀 수 있는 수준의 문제가 점점 없어지네요.. 더 열심히 해야겠어요. 터렛이랑
Fly me to the Alpha Centauri 문제 빨리 풀고 싶어요.
'매일매일 (Everyday)' 카테고리의 다른 글
[BOJ] - 브루트 포스 - (1) - Python (0) | 2021.12.15 |
---|---|
내가 못풀었던 문제 리스트, 앞으로 계획 (0) | 2021.12.13 |
[BOJ] - 기본 수학 2 - 소수 - (1) - Python (0) | 2021.12.09 |
[BOJ] - 기본 수학 1 - (3) - Python (0) | 2021.12.08 |
[BOJ] - 재귀 - (1) - Python (0) | 2021.12.08 |