Cod sursa(job #1139747)

Utilizator RobertSSamoilescu Robert RobertS Data 11 martie 2014 14:04:26
Problema Potrivirea sirurilor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;

int n, m, e;
vector<int> list[17];

ifstream fin("ccm.in");
ofstream fout("ccm.out");

void read(){
	fin >> n >> m >> e;
	
	for(int i=1; i<=e; i++){
		int x, y;
		fin >> x >> y;
		list[x].push_back(y);
	}
}
bool viz[17];
int contor = 0;
int maxim = 0;
int v[17];
void solve(int x){
	for(size_t i=0; i<list[x].size(); i++){
		int next = list[x][i];
		if(!viz[next]){
			viz[next] = true;
			contor ++;
			v[contor] ++;
			if(contor > maxim ) maxim = contor;
			if(x<n) solve(x+1);
			contor--;
			viz[next] = false;
		}
	}
	if(x < n)
		solve(x+1);
}



int main(){
	read();
	solve(1);
	fout << maxim << " " << v[maxim] << '\n';	
return 0;
}