본문 바로가기

Algorithm & Data Structure

백준 - 2581번

728x90
반응형
m = int(input())
n = int(input())

a = list(range(m, n))
b = []
c = []

for i in a:
    if i % 2 == 1:
        b.append(i)

for k in b:
    o = 3
    while o < k:
        if k % o == 0:
            c.append(k)
            break
        o = o+2

a_sub_b = [x for x in b if x not in c]

if len(a_sub_b) > 0:
    print(sum(a_sub_b))
    print(min(a_sub_b))
else:
    print(-1)

왜 안될까..

 

m = int(input())
n = int(input())

a = []

for i in range(m, n+1):
    check = 0
    if i>1:
        for k in range(2, i):
            if i % k == 0:
                check = check+1
                break
        if check == 0:
            a.append(i)

if a != []:
    print(sum(a))
    print(min(a))

else:
    print(-1)

결국 조금 덜 복잡한 방법을 쓰기로 했다.

해결

728x90
반응형

'Algorithm & Data Structure' 카테고리의 다른 글

DFS & BFS  (0) 2022.01.08
백준 - 2108번  (0) 2022.01.07
백준 - 1002번  (0) 2021.12.23
백준 - 4948번  (0) 2021.12.23
백준 - 1011번  (0) 2021.12.20