Cod sursa(job #713838)

Utilizator adighAdrian Gheorghe adigh Data 15 martie 2012 00:05:10
Problema Subsir Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1 kb
#include<fstream>
#include <iostream>
#include <string>
#include<ctime> 
using namespace std;

int i, j, k, n, m, m1, gasit;
string sir1, sir2, sir_mare, sir_mic, gasite[100];
clock_t start, end;
size_t found;


int main()
{
	start = clock();
	ifstream f("subsir.in");
	ofstream g("subsir.out");
	f>>sir1>>sir2;
//	g<<sir1<<" "<<sir2;
	n=sir1.length();
	m=sir2.length();
	if (n>m)
	{
		sir_mare=sir1;
		sir_mic=sir2;
		m1=m;
	}
	else
	{
		sir_mare=sir2;
		sir_mic=sir1;
		m1=n;
	}
	g<<sir_mare<<" "<<sir_mic<<"\n";
	for (i=m1;i>=2;i--)
	{
		gasit=0;
		for (j=0;j<=m1-i;j++)
		{
			g<<sir_mic.substr(j,i)<<" - ";
			found=sir_mare.find(sir_mic.substr(j,i));
			g<<int(found)<<"\n";
			if (int(found)!=-1)
			{
				g<<"gasit"<<"\n";
				gasit++;
				gasite[gasit]=sir_mic.substr(j,i);
				for (k=1;k<gasit;k++)
				{
					if (gasite[gasit]==gasite[k])
						gasit--;
				}
						
			}
		}
		if (gasit>0)
		{
			g<<gasit%666013;
			return 0;
		}
	}
		
	return 0;
}