2 条题解

  • 0
    @ 2023-10-14 21:05:33

    #include<bits/stdc++.h> using namespace std; int a[300010]; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin>>t; while(t--) { int n,m,k,s=1,maxn=-1; cin>>n>>m>>k; if(m==1) { cout<<n<<'\n'; continue; } for(int i=1;i<=n;i++) { long long j=i-1; a[i]=(j*j%m)+1; } sort(a+1,a+n+1); a[n+1]=-1; for(int i=2;i<=n+1;i++) if(a[i]==a[i-1])s++; else { maxn=max(maxn,s+min(k,n-i+1)); s=1; } cout<<maxn<<'\n'; } return 0; }

    • 0
      @ 2023-8-19 9:54:26
      #include<bits/stdc++.h>
      using namespace std;
      int a[300010];
      int main()
      {
      	ios::sync_with_stdio(0);
      	cin.tie(0);
      	cout.tie(0);
      	int t;
      	cin>>t;
      	while(t--)
      	{
      		int n,m,k,s=1,maxn=-1;
      		cin>>n>>m>>k;
      		if(m==1)
      		{
      			cout<<n<<'\n';
      			continue;
      		}
      		for(int i=1;i<=n;i++)
      		{
      			long long j=i-1;
      			a[i]=(j*j%m)+1;
      		}
      		sort(a+1,a+n+1);
      		a[n+1]=-1;
      		for(int i=2;i<=n+1;i++)
      			if(a[i]==a[i-1])s++;
      			else
      			{
      				maxn=max(maxn,s+min(k,n-i+1));
      				s=1;
      			}
      		cout<<maxn<<'\n';
      	}
      	return 0;
      }
      
      • 1

      信息

      ID
      155
      时间
      1000ms
      内存
      256MiB
      难度
      8
      标签
      递交数
      77
      已通过
      14
      上传者