HS_development_log

백준 1011번 - Fly me to the Alpha Centauri / Java 본문

Algorithm-백준/수학

백준 1011번 - Fly me to the Alpha Centauri / Java

DevHyeonseong 2020. 7. 27. 20:45
반응형

1. 문제

 

1011번: Fly me to the Alpha Centauri

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

www.acmicpc.net

 

2. 알고리즘 

  1.  x, y의 실제 좌표보다 둘 사이의 거리가 중요하다.

  2. 1->2->3->5->7->10->13->17.. 이런식으로 거리마다 필요한 횟수가 1씩 늘어난다

 

3. 코드

/**
 * 2020.07.27
 * 백준 1011 :Fly me to the Alpha Centauri
 * DevHyeonseong
 */
import java.util.*;
public class BOJ1011 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        long t = scan.nextLong();

        while(t-->0){
            long x = scan.nextLong();
            long y = scan.nextLong();

            long distance = y-x;
            long answer = 0;
            long cnt = 0;
            for(long i=1;answer<distance;i++){
                answer+=i;
                cnt++;
                if(answer>=distance){
                    break;
                }
                answer+=i;
                cnt++;
            }
            System.out.println(cnt);
        }
    }
}
/**
 * 1 -> 1 / 1번
 * 2 -> 11 / 2번
 * 3 -> 111 / 3번
 * 4 -> 121 / 3번
 * 5 -> 1211 / 4번
 * 6 -> 1221 / 4번
 * 7 -> 12211 / 5번
 * 8 -> 12221 / 5번
 * 9 -> 12321 / 5번
 * 10 -> 123211 / 6번
 * 13 -> 7번
 * 17 -> 8번
 * 1 -> 2-> 3-> 5 -> 7 -> 10 -> 13 > 17
 * 1번증가 2회, 2번증가 2회, 3번증가2회.. 이런식으로 늘어난다
 */

 

끝.

반응형

'Algorithm-백준 > 수학' 카테고리의 다른 글

백준 1929번 - 소수 구하기 / Java  (0) 2020.01.16