코딩 테스트 챌린지

[10월 코테 챌린지] 백준 2차 :: 누적 2개 / (실버3) 1002. 터렛, 1003. 피보나치 함수

  • -
728x90
반응형

2024/10/18

[Today]
백준 2차 :: 누적 2개 / (실버3) 1002. 터렛, 1003. 피보나치 함수

[전체 코딩 테스트 문제 풀이 과정]
•  프로그래머스 :: 누적 372개 / (Lv0) 236개 (Lv1) 73개 (Lv2) 53개 (Lv3) 10개
 백준 1차 :: 누적 173개 / (브론즈1) 13개 (브론즈2) 23개 (브론즈3) 26개 (브론즈4) 9개 (브론즈5) 37개 (실버1) 5개 (실버2) 6개 (실버3) 10개 (실버4) 19개 (실버5) 18개 (골드1) 1개 (골드5) 1개
•  백준 2차 :: 누적 2개 / (실버3) 2개

SW expert academy:: 누적 15개 / D1 6개 D2 9개

 


풀이한 문제

백준 실버3
1002번: 터렛 (acmicpc.net)

1003번: 피보나치 함수 (acmicpc.net)


문제 풀이

백준 실버3
1002번: 터렛 (acmicpc.net)

t = int(input())

for testcase in range(t):
    x1,y1,r1,x2,y2,r2 = map(int,input().split())
    ## 좌표간 거리
    d = (((x1-x2)**2)+((y1-y2)**2))**(1/2)

    ## 무한개 (아예 동일)
    if d==0 and r1 == r2:
        print(-1)
    ## 한 점에서 만나는 경우
    elif d == r1+r2 or d == abs(r2-r1): #외접 or 내접
        print(1)
    ## 두점에서 만나는 경우
    elif abs(r2-r1) < d < r1+r2:
        print(2)
    else:
        print(0)

 

1003번: 피보나치 함수 (acmicpc.net)

## 시간초과 발생

T = int(input())

def fib(n):
    if n<=1:
        answer[n] += 1
        return n
    return fib(n-2)+fib(n-1)


for testcase in range(T):
    n = int(input())
    answer = {0:0,1:0}
    fib(n)
    print(answer[0],answer[1])
## 동적 프로그래밍 

fib = [(0,0)]*(41)
fib[0] = (1,0) ; fib[1] = (0,1) # 0:0-1번,1-0번/ 1:0-0번,1-1번/ 2:0-1번,1-1번/ 3:0-1번,1-2번

for i in range(2,41):
    fib[i] = (fib[i-2][0] + fib[i-1][0] , fib[i-2][1] + fib[i-1][1])
    #(0,0) = ()

T = int(input())
for testcase in range(T):
    n = int(input())
    print(fib[n][0],fib[n][1])

미완성 문제

프로그래머스  Lv2

  1. 다리를 지나는 트럭
320x100
728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.