两个测试点超时0.2s,求讲解
查看原帖
两个测试点超时0.2s,求讲解
1477508
JobsZheng楼主2024/9/29 21:21
#include <bits/stdc++.h>
using namespace std;

long long check(long long n, long long k, long long d) {
    long long cnt = 0;
    long long sum = 0;
    for (long long len = 1; len <= n; len++) 
	{
        sum += (len-1)*d;
        if ((sum % len) == 0) 
		{
            cnt += n - len + 1;
        }
    }
    return cnt;
}

int main() {
    int T;
    cin >> T;
    for (int i = 0; i < T; i++)
    {
        long long n, k, d;
        cin >> n >> k >> d;
        cout << check(n, k, d) << endl;
    }
    return 0;
}
2024/9/29 21:21
加载中...