28求调
查看原帖
28求调
583593
AC_bee楼主2024/10/1 13:50

rt

#include<bits/stdc++.h>
using namespace std;
const int MAXN=1e7;
long long t;
long long n,k,d;
long long p;
long long len;
long long o[MAXN],sum[MAXN];
int main()
{
	cin>>t;
	while(t--)
	{
		cin>>n>>k>>d;
		o[1]=k;
		for(long long i=2;i<=n;i++) o[i]=o[i-1]+d;
		for(long long i=1;i<=n;i++) sum[i]=sum[i-1]+o[i];
		long long l=1,r=1,y=0,len=0;
		while(l<=n)
		{
			y=r-l+1;
			if(r>n)
			{
				l++;
				r=l;
				continue;
			}
			p=sum[r]-sum[l-1];
			if(p%y==0) len++;
			r++;
		}
		cout<<len<<endl;
	}
	return 0;
   //rt++
}
2024/10/1 13:50
加载中...