O(n) ans

wurenchao 2023-12-02 9:35:46 2023-12-02 9:36:16 2 返回题目

#include<bits/stdc++.h>

using namespace std;

const int N=500001;

int n,a[N],b[N],maxl=INT_MIN,maxn=0;

int main(){

cin>>n;

for(int i=1;i<=n;++i){

	cin>>a[i];

	if(a[i]==a[i-1]) b[i]=b[i-1]+1;

	else b[i]=1;

	maxl=max(maxl,b[i]);

}

for(int i=1;i<=n;++i) if(b[i]==maxl) ++maxn;

cout<<maxl<<' '<<maxn;

return 0;

}

{{ vote && vote.total.up }}