fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. int n;
  6. cin>>n;
  7. int a[n+1],f[10],mxdifflen=0,mxd=0,mxfreq=0,num1,num2=INT_MAX,num=INT_MAX;
  8. for(int i=0;i<=9;i++)f[i]=0;
  9. for(int i=0;i<n;i++)
  10. {
  11. cin>>a[i];
  12. f[a[i]]++;
  13. }
  14. for(int i=0;i<n;i++)
  15. {
  16. if(f[a[i]]==1)
  17. {
  18. mxd++;
  19. num2=min(num2,a[i]);
  20. }
  21. else
  22. {
  23. if(mxdifflen < mxd)
  24. {
  25. num = min(num,num2);
  26. mxdifflen = max(mxdifflen,mxd);
  27. }
  28. num2=INT_MAX;
  29. mxd=0;
  30. }
  31. if(mxfreq < f[a[i]])
  32. {
  33. mxfreq = f[a[i]];
  34. num1 = a[i];
  35. }
  36. }
  37. int len = n/mxfreq;
  38. if((double((n*1.0)/mxfreq) - (int)n/mxfreq) < 0.000001)
  39. {
  40. len = n/mxfreq;
  41. }
  42. else
  43. {
  44. len+=1;
  45. }
  46. if(mxdifflen < len)
  47. cout<<len<<" "<<num1;
  48. else
  49. cout<<mxdifflen+1<<" "<<num;
  50. return 0;
  51. }
Success #stdin #stdout 0s 15232KB
stdin
3
9 9 9 
stdout
1 9