fork download
  1. #include<stdio.h>
  2.  
  3. void Merge_Sort(int a[],int,int);
  4. void Merge(int a[],int,int);
  5. int main()
  6. {
  7. int a[100],b[100],j,count,i,n,test;
  8.  
  9. scanf("%d",&test);
  10.  
  11. while(test>0)
  12. {
  13. scanf("%d",&n);
  14.  
  15. for(i=0;i<n;i++)
  16. scanf("%d",&a[i]);
  17. for(i=0;i<n;i++)
  18. scanf("%d",&b[i]);
  19.  
  20. Merge_Sort(a,0,n);
  21. Merge_Sort(b,0,n);
  22.  
  23. i=n-1;
  24. j=n-1;
  25. count=0;
  26.  
  27. while(i>=0)
  28. {
  29. if(a[i]<=b[j])
  30. {
  31. i--;
  32. j--;
  33. count++;
  34. }
  35. else
  36. {
  37. i--;
  38. }
  39. }
  40.  
  41. printf("%d\n",count);
  42.  
  43. test--;
  44. }
  45.  
  46.  
  47.  
  48. //for(i=0;i<10;i++)
  49. // printf("\n --->%d",a[i]);
  50.  
  51. }
  52.  
  53. void Merge_Sort(int a[],int p,int r)
  54. {
  55. int q;
  56. if(p<r)
  57. {
  58. q=(p+r)/2;
  59.  
  60. Merge_Sort(a,p,q);
  61. Merge_Sort(a,q+1,r);
  62. Merge(a,p,r);
  63. }
  64. }
  65.  
  66. void Merge(int a[],int p,int r)
  67. {
  68. int k=0,i,j;
  69. int q=(p+r)/2;
  70. int A[30],B[30];
  71. int n1=q-p+1,n2=r-q;
  72.  
  73. for(i=0;i<n1;i++)
  74. A[i]=a[p+i];
  75.  
  76. A[i]=999;
  77.  
  78. for(i=0;i<n2;i++)
  79. B[i]=a[q+1+i];
  80. B[i]=999;
  81.  
  82. i=0,j=0;
  83. k=p;
  84. while(k<=r)
  85. {
  86.  
  87. if(A[i]<=B[j])
  88. {
  89. a[k]=A[i];
  90. i++;
  91. k++;
  92. }
  93. else
  94. {
  95. a[k]=B[j];
  96. j++;
  97. k++;
  98. }
  99. }
  100. }
  101.  
  102.  
  103.  
  104.  
  105.  
Success #stdin #stdout 0.02s 2680KB
stdin
Standard input is empty
stdout
Standard output is empty