Cod sursa(job #1053934)

Utilizator ELHoriaHoria Cretescu ELHoria Data 13 decembrie 2013 01:10:14
Problema Matrix Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <map>
#include <vector>
#include <algorithm>
#include <functional>
#include <string>

using namespace std;


void update(vector<int> &cnt, const string &s) {
	for (const char &c : s) {
		cnt[c - 'a']++;
	}
}

int main()
{
	ifstream cin("matrix.in");
	ofstream cout("matrix.out");
	int M, N;
	cin >> M >> N;
	cin.get();
	string str;
	vector<int> aCnt(26,0), bCnt(26, 0);

	for (int i = 0; i < M; i++) {
		getline(cin, str);
		update(aCnt, str);
	}

	for (int i = 0; i < N; i++) {
		getline(cin, str);
		update(bCnt, str);
	}

	bool match = true;
	for (int i = 0; i < 26; i++) { 
		if (bCnt[i] > aCnt[i]) {
			match = false;
		}
	}

	cout << (match ? (M - N + 1) * (M - N + 1) : 0);
	return 0;
}