Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int a[1000010];
- int main()
- {
- int n,p,i,q,k,minn=1000000,maxx=0,uk=0,count=0,count1=0,t;
- scanf("%d%d",&n,&p);
- for(i=1; i<=n; i++)
- {
- scanf("%d",&q);
- a[q]++;
- minn=min(minn,q);
- maxx=max(maxx,q);
- }
- for(i=minn; i<=maxx; i++)
- if(a[i]!=0)
- {
- if(a[i]*i>p) break;
- count1+=a[i];
- count++;
- }
- for(k=minn; k<i; k++)
- if(a[k]!=0)
- {
- for(t=k+1; t<i; t++)
- if(a[t]!=0) break;
- if(a[t]==0) break;
- if(t*(a[k]+a[t])<=p)
- {
- count--;
- a[t]+=a[k];
- a[k]=0;
- }
- }
- printf("%d %d\n",count1,count);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement