杭电2034

来源:互联网 发布:js window.event对象 编辑:程序博客网 时间:2024/05/15 01:06

题意很简单,但一开始写就会觉得麻烦,最后大致思路是:先输入数组a,b,对其排序,然后两数组比较,从a 的一个元素开始,每次i++,b数组依次向后判断是否有等于a[i]的

元素,若有i++,每次j++直到b[j]>=a[i],进行下一个a[i]······

#include<iostream>

using namespace std;
int main()
{
               int n,m;
               void paixu(int a[],int l);
               while(cin>>n>>m&&(m||n))
               {
                               int a[100],b[100];
                               int i,j,k=1;                                          //k=1用以最后判断是否输出NULL,如果有数字输出,会执行k=0
                               for(i=0;i<n;i++)
                               cin>>a[i];
                               paixu(a,n);
                               for(i=0;i<m;i++)
                               cin>>b[i];
                               paixu(b,m);
                               for(i=0,j=0;i<n;i++)                           //循环判断部分
                               {
                                             while(b[j]<=a[i]&&i<n&&j<m)
                                             {
                                                               if(b[j]==a[i]) i++;
                                                               j++;
                                             }
                                             if(i<n) 
                                             {
                                                              cout<<a[i]<<' ';
                                                              k=0;
                                             }
                                }
                                if(k) cout<<"NULL";
                                cout<<endl;
                }
}
void paixu(int a[],int l)                                             //排序函数
{
                int i,j,b;
                for(i=0;i<l;i++)
                {
                             for(j=0;j<l-i-1;j++)
                            {
                                          if(a[j]>a[j+1])
                                         {
                                                      b=a[j];
                                                      a[j]=a[j+1];
                                                      a[j+1]=b;
                                         }
                             }
                  }
}
原创粉丝点击