Pagini recente » Cod sursa (job #2441725) | Cod sursa (job #1150531) | Cod sursa (job #1384437) | Cod sursa (job #181596) | Cod sursa (job #1131635)
#include <iostream>
#include <sstream>
using namespace std;
const int NMAX = 100;
int n;
void LIS(int v[])
{
int Size[NMAX];
string Path[NMAX];
for(int i=0; i<=n; i++)
{
Size[i] = 1;
stringstream ss;
ss<<v[i];
Path[i] = ss.str();
}
int maxLength = 0;
for(int i=1; i<=n; i++)
for(int j=0; j<=i; j++)
if(v[i]>v[j] && Size[i]<Size[j]+1)
{
Size[i] = Size[j]+1;
stringstream ss;
ss<<Path[j]<<" "<<v[i];
Path[i] = ss.str();
if(maxLength<Size[i])
maxLength = Size[i];
}
cout<<"LIS este: "<<maxLength;
for(int i=0; i<=n; i++)
if(Size[i] == maxLength)
{
cout<<endl<<Path[i];
break;
}
}
int main()
{
int a[] = {1,2,3,4};
n=3;
LIS(a);
}