소토
소토의 기록하는 삶
소토
전체 방문자
오늘
어제
  • 분류 전체보기 (34)
    • Algorithm (34)
      • Problem (34)
    • Web (0)
    • ML & AI (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 코드스테이츠
  • 알고리즘
  • 문제
  • 백준
  • 직장인인강
  • 패캠챌린지
  • 직장인자기계발
  • 패스트캠퍼스
  • 한번에끝내는JavaSpring웹개발마스터초격차패키지Online
  • 패스트캠퍼스후기

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
소토

소토의 기록하는 삶

Algorithm/Problem

[Baekjoon] 1011번 : Fly me to the Alpha Centauri

2022. 1. 9. 17:00

 

골드 5

문제 링크(페이지) : https://www.acmicpc.net/problem/1011

 

1011번: Fly me to the Alpha Centauri

우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행

www.acmicpc.net

👇 문제 펼치기

더보기
더보기

 

문제 풀이

1부터 주어진 조건에 맞도록 횟수를 세고, 규칙을 파악한다.

총 거리 이동 과정 작동 횟수  반복 횟수
1 1 1  1
2 11 2  1
3 111 3  2
4 121 3  -
5 1211 4  2
6 1221 4  -
7 12211 5  3
8 12221 5  -
9 12321 5  -
10 123211 6 3
11 123221 6  -
12 123321 6  -
13 1233211 7  4
14 1233311 7  -
15 1233321 7 -
16 1234321 7 -
17 12343211 8  4
18 12343221 8 -
19 12343321 8 -
20 12344321 8 -

 

표를 보면 1-2-3-3-4-4-5-5-5... 로 규칙적으로 증가하고 있음을 알 수 있다.

 

반복 횟수는 1-1-2-2-3-3... 이런 식으로 두번 씩 반복되고,

반복 횟수마다 이동할 수 있는 최대 거리는 해당 거리(x)까지의 반복횟수를 모두 더한 것과 같다.

예를 들어 3번으로 이동할 수 있는 최대 거리는 12(1+1+2+2+3+3) 이다. 

 

이 규칙을 이용해 코드를 짜면 다음과 같다.

 

코드

t = int(input())

for _ in range(t):
    x, y = map(int, input().split())
    distance = y - x # 이동거리
    count = 0 # 작동 횟수
    again = 1 # 반복 횟수 (처음엔 1회)
    position = 0 # 이동 위치

    while position < distance :
        count += 1
        position += again  # count 수에 해당하는 반복 횟수를 더함
        if count % 2 == 0 :  # count가 2번 반복될 때 마다 반복횟수 증가
            again += 1
    print(count)

 

느낀점

방법이 쉽게 떠오르지 않을 때는 직접 하나씩 적어보면서 규칙을 파악해 보자.

728x90
저작자표시 (새창열림)

'Algorithm > Problem' 카테고리의 다른 글

[Baekjoon] 10989번 : 수 정렬하기3  (0) 2022.01.13
[Baekjoon] 1436번 : 영화감독 숌  (0) 2022.01.12
[Baekjoon] 1018번 : 체스판 다시 칠하기  (0) 2022.01.12
[Baekjoon] 2447번 : 별 찍기 - 10 / 11729번 : 하노이의 탑  (0) 2022.01.11
[Baekjoon] 1978번 : 소수찾기 / 1929번 : 소수 구하기 / 4948번 : 베르트랑 공준 / 9020번 : 골드바흐의 추측  (0) 2022.01.09
    소토
    소토

    티스토리툴바