#include <iostream> #include <algorithm> #include <cstring> using namespace std; int bruteForce(long long remaining, int speed) { int ret = 0; while (remaining > 0) { if (remaining > speed * 2) { ret += 2; remaining -= speed * 2; speed++; } else { int quotient = remaining / speed; remaining -= quotient * speed; ret += quotient; speed--; } } return ret; } int main() { int cases; cin >> cases; for (int i = 0; i < cases; i++) { long long x, y; cin >> x >> y; cout << bruteForce(y - x, 1) << endl; } return 0; } |
정답에 대한 수열을 얻었음에도 풀지 못했는데... 이것을 어떻게 다시 접근해야하지, 내일 다시 한번 풀어보도록 하겠습니다. |