Cod sursă (job #397422)

Utilizator avatar MaddoxX Mironica Vasile MaddoxX IP ascuns
Problemă Fotografie (clasele 9-10) Compilator cpp | 0,84 kb
Rundă Arhiva de probleme Status evaluat
Dată 26 oct. 2018 22:25:06 Scor 0
#include <fstream>
using namespace std;

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

int n, m, p, q, k, i, j, y, x, prod;
char a[1001][1001], b[1001][1001];

int main() {
	ios_base::sync_with_stdio(0);
	fin.tie(NULL);
	fin>>n>>m;
	for(i=1; i<=n; i++)
		for(j=1; j<=m; j++)
			fin>>a[i][j];
	fin>>p>>q;
	prod=p*q;
	for(i=1; i<=p; i++)
		for(j=1; j<=q; j++)
			fin>>b[i][j];
	for(y=1; y<=n-p+1; y++)
		for(x=1; x<=m-q+1; x++) {
			if(x==1) {
				k=0;
				bool e=1;
				for(i=1; i<=p && e; i++)
					for(j=1; j<=q && e; j++)
						if(a[y+i-1][x+j-1]==b[i][j])
							k++;
						else
							e=0;
			}
			else {
				for(i=2; i<=p; i++) {
					if(a[y+i-1][x-1]==b[i][1])
						k--;
					if(a[y+i-1][x+q-1]==b[i][q-1])
						k++;
				}
			}
			if(k==prod)
				fout<<y-1<<' '<<x-1<<'\n';
		}
	return 0;
}