Mai intai trebuie sa te autentifici.
Cod sursa(job #2363150)
Utilizator | Data | 3 martie 2019 12:58:50 | |
---|---|---|---|
Problema | Matrix | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.77 kb |
#include <fstream>
using namespace std;
ifstream f("matrix.in");
ofstream g("matrix.out");
int n,m,i,j,c,a[1001][1001][27],fr[27],sol;
char ch;
bool ok;
int main(){
f>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++){
f>>ch;
for(c=1;c<='z'-'a'+1;c++)
a[i][j][c]=a[i][j][c]+a[i-1][j][c]+a[i][j-1][c]-a[i-1][j-1][c];
a[i][j][ch-'a'+1]++;
}
for(i=1;i<=m;i++)
for(j=1;j<=m;j++){
f>>ch;
fr[ch-'a'+1]++;
}
for(i=m;i<=n;i++)
for(j=m;j<=n;j++){
ok=1;
for(c=1;c<='z'-'a'+1;c++){
if(a[i][j][c]-a[i-m][j][c]-a[i][j-m][c]+a[i-m][j-m][c]!=fr[c]){
ok=0;
break;
}
}
sol+=ok;
}
g<<sol;
}