#include <stdio.h>
int solve() {
int x, y, res, cnt = 2;
scanf("%d %d", &x, &y);
int distance = y - x;
if(distance <= 3)
printf("%d\n", distance);
else {
distance -= 2;
res = 2;
while(distance != 0) {
if(distance / cnt >= 2) {
distance -= 2 * cnt;
res += 2;
cnt++;
}else{
if(distance < cnt) {
res++;
distance = 0;
}else if(distance >= cnt) {
if(distance % cnt == 0)
res++;
else
res += 2;
distance -= cnt + distance % cnt;
}
}
}
printf("%d\n", res);
}
}
int main() {
int test;
scanf("%d", &test);
for(int i=0;i<test;i++)
solve();
return 0;
}
드디어~~~~~~~~~~~~~ 며칠을 문제 분석하면서 끄적였는지 ㅠ 힘들었다
문제를 풀면서 들었던 생각은 숫자가 나오는 순서 자체는 별 상관이 없다는것. 배치만 제대로 하면 되는것이므로
'백준 (C99) > 기본수학 1단계 (完)' 카테고리의 다른 글
백준 10757 : 큰 수 A+B (0) | 2022.01.28 |
---|---|
백준 2839 : 설탕 배달 (0) | 2022.01.28 |
백준 2775 : 부녀회장이 될테야 (0) | 2022.01.28 |
백준 10250 : ACM 호텔 (0) | 2022.01.27 |
백준 2869 : 달팽이는 올라가고 싶다 (0) | 2022.01.26 |
Comment