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

 

1011번: Fly me to the Alpha Centauri

우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행사가 되어 새로운 세계에 발을 내려 놓는 영광의 순간을 기다리고 있다. 그가 탑승하게 될 우주선은 Alpha Centauri라는 새로운 인류의 보금자리를 개척하기 위한 대규모 생활 유지 시스템을 탑재하고 있기 때문에, 그 크기와 질량이 엄청난 이유로 최신기술력을

www.acmicpc.net

 

처음 스타트가 1 마지막이 1이 되도록 해줄려면

증가해주다가 마지막으로 다가갈수록 감소시켜서 마지막 전단계가 2가 되거나 1이 되야 1칸을 이동할 수 있다.

문제를 손으로 써보면 규칙이 보인다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <cstdio>
int main(){
    int count, T, temp, tempcheck;
    long long F, S;
    scanf("%d"&T);
    while (T--) {
        scanf("%lld%lld"&F, &S);
        count = 1 , temp = 1, tempcheck = 0;
        long long minus = 1;
        while (1) {
            if (minus + temp <= S - F) {
                tempcheck++, minus += temp, count++;
                if (tempcheck == 2) tempcheck = 0, temp++;
            }
            else if (minus + temp > S - F) {
                printf("%d\n", count);
                break;
            }
        }
    }
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter

+ Recent posts