Time Exceeded
Code
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
ll sum_floor_div(ll N, ll M) {
ll result = 0;
ll d = 1;
while (d <= M) {
ll q = N / d;
ll R = N / q;
if (R > M) R = M;
ll count = R - d + 1;
result += q * count;
d = R + 1;
}
return result;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T; cin >> T;
while (T--) {
ll N; cin >> N;
if (N == 1) {
cout << 0 << "\n";
continue;
}
ll ans = sum_floor_div(N, N - 1) - (N - 1);
cout << ans << "\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 16:23:20
- Judged At
- 2025-07-14 16:23:20
- Judged By
- Score
- 5
- Total Time
- ≥1100ms
- Peak Memory
- ≥564.0 KiB