백준 2869 : 달팽이는 올라가고 싶다.
2869 달팽이는 올라가고 싶다.문제를 보고 바로 생각한것은 그냥 반복문 쓰면 빠르게 해결될 것이다? 라는 생각이였다.하지만 반복문으로 해본 결과 시간제한 1초가 나왔고, 문제에서는 시간제한이 0.25초 였던 것이다.a, b, v = map(int, input().split())x, y = 0, 0def func(a, b, v): global x, y while True: y += 1 x += a if x >= v: return y else: x -= bprint(func(a, b, v))위 코드가 반복문을 사용해서 했던 코드이다.그럼 시간 초가 촉박한 문제들을 과거에는 어떻게 풀었을까?나의 경우는 시간초..
백준 1193 : 분수찾기
1193번 분수찾기문제에서 나열된 분수들이 지그재그 순서로 차례대로 1번, 2번, 3번,4번,... 분수라고 하였고, 첫 줄에 x(1아이디어문제에서 나온 순서를 토대로 배열을 만들면1/11/2, 2/13/1, 2/2, 1/31/4, 2/3, 3/2, 4/15/1, 4/2, 3/3, 2/4, 1/5...위와 같이 계속 반복되어 질 것이다.여기서 각 줄마다 특징을 알아보아야 한다!- 짝수 라인 : 분모가 1씩 늘어나고 분자가 1씩 줄어든다.- 홀수 라인 : 분자가 1씩 늘어나고 분모가 1씩 줄어든다.이제 규칙(특징)을 찾았으니까 몇번째 줄에 몇번째 위치의 분수가 무엇인지를 알아내야 한다. while num > line: num -= line line += 1 while문의 loop를 사용해 몇번째 줄이고 몇..