Pagini recente » Cod sursa (job #2891400) | Cod sursa (job #3187151) | Cod sursa (job #2925583) | Cod sursa (job #641116) | Cod sursa (job #260571)
Cod sursa(job #260571)
#include <fstream>
using namespace std;
fstream f;
fstream g;
int m,n;
int a[1024];
int b[1024];
int max1[1024];
int max2[1024];
int i,j;
void lsub()
{
max1[m-1]=1;
for(i=m-2;i>=0;i--)
{
if(a[i]>a[i+1])
max1[i]=max1[i+1];
else
max1[i]=max1[i+1]+1;
}
max2[n-1]=1;
for(i=n-2;i>=0;i--)
{
for(j=i;j<m-1;j++)
if(b[i]>b[i+1])
max2[i]=max2[i+1];
else
max2[i]=max2[i+1]+1;
}
int max,Max,aux;
max = max1[0];
Max = max2[0];
if(m<n)
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
if(a[i]==b[j]&&max==max1[i])
{
g << a[i] << " ";
max--;
Max--;
break;
}
}
else
{
for(i=0;i<n;i++)
for(j=0;j<m;j++)
if(b[i]==a[j]&&Max==max2[i])
{
g << b[i] << " ";
max--;
Max--;
break;
}
}
}
void find()
{
}
int main()
{
f.open("cmlsc.in",fstream::in);
f >> m >> n;
for(i=0;i<m;i++)
f >> a[i];
for(i=0;i<n;i++)
f>> b[i];
f.close();
g.open("cmlsc.out",fstream::out);
lsub();
g.close();
return 0;
}