SRM 594 1A 2013.12.10
DIV 1
250
#include<iostream>
#include<vector>
#include<string>
using namespace std;
class AstronomicalRecords
{
public: int minimalPlanets(vector<int> A, vector <int> B)
{
intf[100][100];
intret=0;
intn=A.size(),m=B.size();
for(inti=0;i<n;i++)
for(intj=0;j<m;j++)
f[i][j]=1;
for(inti=0;i<n;i++)
for(intj=0;j<m;j++)
{
for(intt=i+1;t<n;t++)
for(intk=j+1;k<m;k++)
{
longlong tt1=A[i], tt2=A[t];
tt1=tt1*B[k];tt2=tt2*B[j];
if(tt1==tt2&& f[i][j]+1>f[t][k]) f[t][k]=f[i][j]+1;
}
if(f[i][j]>ret) ret=f[i][j];
}
returnA.size()+B.size()-ret;
}
};