본문 바로가기
알고리즘/프로그래머스

두 원 사이의 정수 쌍 파이썬 풀이

by 푸딩코딩 2023. 6. 18.
728x90
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/181187

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

def solution(r1, r2):

    c=0
    
    p1=r1**2
    p2=r2**2

    y_min=r1
    y_max=r2
    for i in range(r2):
        while(y_max**2+i**2>p2):
            y_max=y_max-1
        while(y_min>1 and (y_min-1)**2+i**2>=p1 ):
            y_min=y_min-1
        c+=y_max-y_min+1
    
    
    return c*4

y_min과 y_max의 갱신을 for문 안에서 해줄 필요가 없다 

부등호를 유의해서 

문제를 쉽게 풀려고 하지 말자 

 

 

 

 

 

참고 유튜브 영상

 

 

728x90
반응형