社区讨论
啥音
P14955元素选择参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mjz8pr4g
- 此快照首次捕获于
- 2026/01/04 12:37 2 个月前
- 此快照最后确认于
- 2026/01/04 13:04 2 个月前
CPP
#include <bits/stdc++.h>
#define int long long
using namespace std;
int T, n, m, k, ans, it;
int f(int x) {
int d = n / x;
int p = d + (n % x > 0);
if(p > m) return k + 1;
return d * (d - 1) / 2 * x + n % x * (p - 1);
}
int find() {
int l = 1, r = min(it, n), s, mid;
while(l <= r) {
mid = l + r >> 1;
if(f(mid) > k) l = mid + 1;
else {
s = mid;
r = mid - 1;
}
}
return s;
}
void solve() {
ans = 0;
cin >> n >> m >> k;
it = n;
while(n > 1) {
it = find();
// cout << it << "?\n";
if(it == n) {
puts("-1");
return ;
}
n = it;
ans ++;
}
cout << ans << "\n";
}
signed main() {
cin >> T;
while(T --) solve();
return 0;
}
时间复杂度是 ,但是:
炸了
回复
共 1 条回复,欢迎继续交流。
正在加载回复...