Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- void quicksort(long long soal[],long long int min,long long int max)
- {
- long long int i=min,j=max;
- long long h;
- long long pivot=soal[min];
- do
- {
- while(soal[i]<pivot)i++;
- while(soal[j]>pivot)j--;
- if(i<=j)
- {
- h=soal[i];
- soal[i]=soal[j];
- soal[j]=h;
- i++;
- j--;
- }
- }while(i<=j);
- if(i<max)
- {
- quicksort(soal,i,max);
- }
- if(min<j)
- {
- quicksort(soal,min,j);
- }
- }
- int main()
- {
- long long soal[100005],cari,even[10005],odd[10005],arr,kasus,genap,ganjil,temp,e,o;
- scanf("%lld",&arr);
- for(int i=0;i<arr;i++)
- {
- scanf("%lld",&soal[i]);
- }
- quicksort(soal,0,arr-1);
- e=0;o=0;
- for(int i=0;i<arr;i++)
- {
- if(soal[i]%2==0)
- {
- even[e]=soal[i];
- e++;
- }
- else
- {
- odd[o]=soal[i];
- o++;
- }
- }
- scanf("%lld",&kasus);
- for(int k=0;k<kasus;k++)
- {
- scanf("%lld",&cari);
- genap=0;ganjil=0;
- for(int i=e-1;i>0;i--)
- {
- for(int j=i-1;j>=0;j--)
- {
- if(even[i]+even[j]>=cari)
- {
- genap++;
- }
- else
- break;
- }
- }
- for(int i=o-1;i>0;i--)
- {
- for(int j=i-1;j>=0;j--)
- {
- if(odd[i]+odd[j]>=cari)
- {
- ganjil++;
- }
- else
- break;
- }
- }
- printf("Case #%d: %lld %lld\n",k+1,ganjil,genap);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement