Time Exceeded
Code
#include <bits/stdc++.h>
using namespace std;
int32_t main() {
cin.tie(0) -> sync_with_stdio(0);
int t;
cin >> t;
while (t--) {
int n;
cin >> n;
int x = n, d = 1;
int64_t ans = 0;
while (d <= n) {
int hi = n, lo = d, mx = lo;
while (hi >= lo) {
int mid = hi + lo >> 1;
if (n / mid < n / d) {
hi = mid - 1;
} else {
mx = mid;
lo = mid + 1;
}
}
ans += (mx - d + 1) * 1LL * (n / d);
d = mx + 1;
}
cout << ans - n << "\n";
}
return 0;
}
Information
- Submit By
- Type
- Submission
- Problem
- P1207 D2. GCD equal Absolute Value (Hard Version)
- Contest
- Educational Round 1
- Language
- C++17 (G++ 13.2.0)
- Submit At
- 2025-07-14 17:45:56
- Judged At
- 2025-07-14 17:45:56
- Judged By
- Score
- 5
- Total Time
- ≥1100ms
- Peak Memory
- ≥532.0 KiB