반응형

문제

https://www.acmicpc.net/problem/1011

이 문제는 몇번만에 도착할수 있느냐 이므로 그걸 기준으로 표를 만들어서 규칙을 찾아봤다.

1                    1        

11                  2        +1

121                3        +2

1221              4        +2

12321            5        +3

123321          6        +3

1234321        7        +4

...


거리가 1,2,2,3,3,4,4 늘어날때마다 횟수가 한번씩 늘어나는걸 알수있다.코드로 짜보면

 이렇게 구현할수 있을


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import sys
 
n=int(input())
 
 
while (n>0):
    n-=1
    x,y=map(int,sys.stdin.readline().split())
    dis=y-#거리
    result=0    #결과
    sub=1   #뺄거리
    check_sub=0
    while(dis>0):
        dis-=sub    #총거리에서 빼줌
        check_sub+=1    #2의 배수마다 늘어남
        if check_sub%2==0:
            sub+=1
        result+=1   #길이 1씩증가
 
    print(result)
 

cs


반복문이나 조건문을 두번이상 들어가면 코드의 들여쓰기가 깨져서 이렇게 올려야

 될거같다.



반응형

'알고리즘(python) > 수학' 카테고리의 다른 글

[Python]수학2 백준 2581  (0) 2019.12.20
[Python]수학2 백준 1978  (0) 2019.12.20
[Python]수학 백준 2775  (0) 2019.12.20
[Python]수학 백준 10250  (0) 2019.12.19
[Python]수학 백준 2869  (0) 2019.12.19
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기