- toc {:toc}
νμ΄
μ²μ μμν λμ λλ λ 1 λ‘ μμνκ³ 1 λ‘ λλμΌ νλ€λ μ μ μμΈμ¬νμΌλ‘ μκ°ν΄λκ³ νμ΄νλ€.
μ΄λν μ μλ λ°©μμ΄ n-1, n, n+1 λ‘ μ¬μ©νλ λ°©μμ΄κΈ° λλ¬Έμ μ΄λ μ λ λμΉμ μΌλ‘ κ³μ°ν΄μΌ νλ€κ³ μκ°νλ€.
μλ₯Ό λ€μ΄ x, y κ° κ°κ° 0, 5 λΌκ³ νλ©΄ 5 λ₯Ό μ΄λν΄μΌ νλ€. μμ, λμ°© 1 κ΄λ 2 λ² μκ°νλ©΄ 3 μ΄ λ¨κ³ , λ΄κ° μ νν μ μλ μ΄λ λ°©μμ΄ 1 κ΄λ μ΄λ νΉμ 2 κ΄λ μ΄λμ΄λ€. 2 κ΄λ 2 λ²μ μ¬μ©ν μ μκΈ° λλ¬Έμ 2, 1 μ μ¬μ©ν΄μΌ νλ€.
μ¦, n κ΄λ x2 λ³΄λ€ λ¨μ κ±°λ¦¬κ° κΈΈλ€λ©΄ λμΉμ μΌλ‘ κ³μ°ν΄μ£Όλ©΄ λκ³ , n κ΄λ x2 λ³΄λ€ λ¨μ κ±°λ¦¬κ° μ§§κ±°λ κ°λ€λ©΄ n κ΄λ μ 1 λ²λ§ μ μ©ν΄μ€λ€. κ°μ κ²½μ°μλ n+1 κ΄λ 1 λ²μΌλ‘ μ²λ¦¬ν μ μλ κ²½μ° (n=1 λ¨μ 거리=2) μ μ²λ¦¬ν μ μλ κ²½μ° (n=3, λ¨μ 거리=6) κ° μμ΄ μ²λ¦¬ν΄μ€λ€.
μ²μμ μκ°ν΄λμλ μμΈμ¬νκΉμ§ μμ λ¨κ³μ μ μ©ν΄μ€λ€.
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int T, x, y;
long long num, res = 0;
cin >> T;
for(int i = 0; i < T; i++){
num = 1;
res = 0;
cin >> x >> y;
long long diff = y - x;
if(diff == 2){
cout << 2 << '\n';
continue;
}
while(true){
if(num * 2 < diff){
diff = diff - num * 2;
res += 2;
num++;
}
else if(num * 2 == diff){
if (num+1 < diff) res += 2;
else res++;
break;
}
else {
diff = diff - num;
res++;
}
if(diff <= 0) break;
}
cout << res << '\n';
}
return 0;
}νμ΄λ₯Ό λ°λ‘λ₯Ό μ°Ύμκ°λ©° λΌμλ§μΆκΈ°λ‘ ν΄μ μ΄λ κ² νΈλ κ²μ΄ μ³μ κ²μΈκ° μκ°μ΄ λ€μ΄ λ€λ₯Έ νμ΄λ₯Ό μ°Ύμλ΄€λλ νλ₯Ό κ·Έλ € κ·μΉμ±μ μ°Ύλ λ°©μμΌλ‘ λ§μ΄ νμ΄νλ€. 체ν¬ν΄λκ³ λ€μ νμ΄λ΄μΌκ² λ€.