[1011] Fly me to the Alpha Centauri

2023. 6. 16. 11:36·Coding Test/Math
728x90
 

1011번: Fly me to the Alpha Centauri

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

www.acmicpc.net

 

분석

이동해야 하는 거리

  • n의 제곱보다 작거나 같을 때 공간이동 작동 횟수 = n * 2 - 1
  • n의 제곱보다 클 때공간이동 작동 횟수 = n * 2
거리 경로 N N² 공간이동
작동횟수
반복횟수
1 1 1 1 1 1
2 11 1 1 2 1
3 111 2 4 3 2
4 121 2 4 3
5 1211 2 4 4 2
6 1221 2 4 4
7 12211 3 9 5 3
8 12221 3 9 5
9 12321 3 9 5
10 123211 3 9 6 3
11 123221 3 9 6
12 123321 3 9 6
13 1233211 4 16 7 4
14 1233221 4 16 7
15 1233321 4 16 7
16 1234321 4 16 7
17 12344321 4 16 8 4
18 12343221 4 16 8
19 12343321 4 16 8
20 12344321 4 16 8

 

 

풀이

"""
이전 작동시기에 k광년을 이동하였을 때는 k-1 , k 혹은 k+1 광년만을 다시 이동할 수 있다
처음 작동시킬 경우 1 광년을 이동할 수 있으며, 그 다음에는 0(1-1) , 1(1) , 2(1+1) 광년을 이동, 2광년을 이동한다면 다음 시기엔 1(2-1), 2(2), 3(2+1) 광년을 이동
x지점에서 y지점을 향해 최소한의 작동 횟수로 이동
스트케이스의 개수 T가 주어진다. 각각의 테스트 케이스에 대해 현재 위치 x 와 목표 위치 y 가 정수로 주어지며, x는 항상 y보다 작은 값을 갖는다
하지만 y지점에 도착해서도 공간 이동장치의 안전성을 위하여 y지점에 도착하기 바로 직전의 이동거리는 반드시 1광년으로 하려 한다.
3
0 3
1 5
45 50
"""
import math

T = int(input())
for i in range(T):
    s, e = map(int, input().split())
    length = e-s

    n = round(math.sqrt(length))

    while True:
        if length<=n**2:
            print(2*n-1)
            break
        else:
            print(2*n)
            break

 

 

 

 

728x90
저작자표시 비영리 변경금지 (새창열림)
'Coding Test/Math' 카테고리의 다른 글
  • [4948] 베르트랑 공준 (소수의 개수)
  • [9613] GCD 합 (조합)
  • [2960] 에라토스테네스의 체
  • [14565] 역원(Inverse) 구하기 (확장 유클리드 호제법)
Karla Ko
Karla Ko
𝘾𝙤𝙣𝙩𝙞𝙣𝙪𝙤𝙪𝙨𝙡𝙮 𝙄𝙢𝙥𝙧𝙤𝙫𝙞𝙣𝙜, 𝘾𝙤𝙣𝙨𝙩𝙖𝙣𝙩𝙡𝙮 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙞𝙣𝙜 𝙔𝙚𝙨!
    250x250
  • Karla Ko
    karlaLog
    Karla Ko
  • 전체
    오늘
    어제
    • Total (467)
      • Spring (19)
      • JPA (4)
      • Cloud & Architecture (15)
        • Kubernetes (5)
        • Docker (3)
        • MSA (2)
        • GCP (1)
        • AWS (4)
      • Devops (1)
      • Message Queue (4)
        • Kafka (2)
        • RabbitMQ (2)
      • Git (4)
      • DB (4)
      • Java (9)
      • Python (4)
      • CS (11)
        • OS (8)
        • Network (2)
        • Algorithm (1)
      • Coding Test (392)
        • programmers (156)
        • Graph (43)
        • DP (37)
        • Search (31)
        • Tree (13)
        • Data Structure (26)
        • Combination (12)
        • Implement (18)
        • Geedy (23)
        • Sort (7)
        • Math (21)
        • geometry (2)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    이분탐색
    자료구조
    최대공약수
    그래프
    트리
    조합
    Algorithm
    DFS
    플로이드워셜
    다익스트라
    구간합
    정렬
    힙
    BFS
    LIS
    DP
    최소신장트리
    최단거리
    파이썬
    덱
    프로그래머스
    백준
    스택
    큐
    동적계획법
    월간코드챌린지
    재귀
    그리디
    알고리즘
    구현
  • hELLO· Designed By정상우.v4.10.3
Karla Ko
[1011] Fly me to the Alpha Centauri
상단으로

티스토리툴바