robert-min / dev-blog

김민준 - project 정리한 repo입니다.
0 stars 0 forks source link

240817 - 요격시스템, 두 원 사이의 정수 쌍, 달리기 경주 #143

Open robert-min opened 1 month ago

robert-min commented 1 month ago

연습문제 -요격시스템

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

image

def solution(targets):
    answer = 0
    targets.sort(key = lambda x: (x[1], x[0]))
    # print(targets)
    start, end = 0, 0
    for target in targets:
        if target[0] >= end:
            answer += 1
            end = target[1]
    return answer
robert-min commented 1 month ago

두 원 사이의 정수 쌍

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

import math

def solution(r1, r2):
    answer = 0
    for i in range(1,r2): #x가 정수일때 y가 정수인 점을 탐색
        y2 = math.floor(math.sqrt(math.pow(r2,2) - math.pow(i,2)))
        if i >= r1: #x값이 r1과 r2사이인 경우 
            y1 = 0
        else:       #x값이 r1보다 작은 경우
            y1 = math.ceil(math.sqrt(math.pow(r1,2) - math.pow(i,2)))
        answer += y2-y1+1 

        if i >= r1: #계산의 편의를 위해 y가 0인 x축위의 점들은 제외
            answer -= 1

    answer += r2-r1+1   #x축 위에있는 점
    answer *= 4
    return answer

시간초과 풀이

robert-min commented 1 month ago

달리기 경주