[ 백준 ] 1011번 Fly Me To The Alpha Centauri
문제
https://www.acmicpc.net/problem/1011
풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
using namespace std;
int main() {
int T;
cin >> T;
for (int test_case = 0; test_case < T; test_case++) {
double x, y, result;
cin >> x >> y;
double i = 1;
for (;; i++) {
if (y - x < i*i)
break;
}
//거리가 i-1의 제곱수일때
if (y - x == (i - 1)*(i - 1)) {
result = 2 * (i - 1) - 1;
}
//거리가 i-1의 제곱수와 중간값 사이에 있을 때
else if (y - x < ((i - 1)*(i - 1) + i * i) / 2) {
result = 2 * (i - 1);
}
//거리가 중간값과 i의 제곱수 사이에 있을 때
else {
result = 2 * i - 1;
}
cout << result << '\n';
}
}
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.