Cod sursa(job #981261)

Utilizator DaNutZ2UuUUBB Bora Dan DaNutZ2UuU Data 6 august 2013 16:54:24
Problema Matrix Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
using namespace std;
ifstream in("matrix.in");
ofstream out("matrix.out");
int m,n,i,j,l, ok1, nr,t[1001][1001],v[27];
bool b[1001][1001];
char c, a[1001][1001];
int main(){
    in>>m>>n;
    for(i=1;i<=m;i++)
        for(j=1;j<=m;j++)
            in>>a[i][j];
    for (i=1;i<=n;i++)
        for(j=1;j<=n;j++)
        {
            in>>c;
            v[c-96]++;
        }
    for(l=1;l<=26;l++)
    {
        for(i=1;i<=m;i++)
            for(j=1;j<=m;j++)
            {
                ok1=0;
                if(a[i][j]==96+l) ok1=1;
                t[i][j]=t[i][j-1]+t[i-1][j]-t[i-1][j-1]+ok1;
            }
        for (i=n;i<=m;i++)
            for(j=n;j<=m;j++)
                if(t[i][j]-t[i-n][j]-t[i][j-n]+t[i-n][j-n]!=v[l]) b[i][j]=true;
    }
    nr=0;
    for(i=n;i<=m;i++)
        for(j=n;j<=m;j++)
            if(b[i][j]==false) nr++;
    out<<nr;
    return 0;
}