HZAU 1001 Handing Out Candies

来源:互联网 发布:暗黑三数据库 编辑:程序博客网 时间:2024/05/29 03:36

原题
这题还是蛮难的 值得细细品味

#include <climits>#include <cmath>#include <cstdio>#include <cstring>#include <iostream>#include <set>using namespace std;void solve(){  long long n, k;  cin >> n >> k;  long i = k / n;  long l = k / (i + 1) + 1;  long r = n;  long long ans = 0;  while (l > 0) {    ans += (k * (r - l + 1) - i * (l + r) * (r - l + 1) / 2);    if (l == 1) break;    i = k / (l - 1);    l = k / (i + 1) + 1;    r = k / i;  }  cout << ans << endl;}int main(){//  freopen("input.txt", "r", stdin);  int t;  scanf("%d", &t);  for (int i = 0; i < t; i++) {    solve();  }}
0 0
原创粉丝点击