Pagini recente » Cod sursa (job #620941) | Cod sursa (job #171511) | Cod sursa (job #2472499) | Cod sursa (job #2138485) | Cod sursa (job #3261218)
#include <fstream>
using namespace std;
ifstream f("matrix.in");
ofstream g("matrix.out");
int n,m,s1,s2,nr,a[1001][1001],b[1001][1001],x;
char c;
int main()
{
f>>n>>m;
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
{
f>>c;
x=c-'a'+1;
a[i][j]=a[i-1][j]+a[i][j-1]-a[i-1][j-1]+x;
b[i][j]=b[i-1][j]+b[i][j-1]-b[i-1][j-1]+x*x;
}
for(int i=1; i<=m; i++)
for(int j=1; j<=m; j++)
{
f>>c;
x=c-'a'+1;
s1=s1+x;
s2=s2+x*x;
}
for(int i=m; i<=n; i++)
for(int j=m; j<=n; j++)
if(a[i][j]-a[i-m][j]-a[i][j-m]+a[i-m][j-m]==s1 && b[i][j]-b[i-m][j]-b[i][j-m]+b[i-m][j-m]==s2)
nr++;
g<<nr;
return 0;
}