Cod sursa(job #277625)

Utilizator Cristy94Buleandra Cristian Cristy94 Data 11 martie 2009 20:13:22
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.29 kb
#include<fstream.h>
ifstream f("cartele.in");
ofstream g("cartele.out");
int n,c,i,j,ok,s[51][51],m[51][51],m1[51][51];
int main(){
f>>n>>c;
for(i=1;i<=n;i++)
  for(j=1;j<=n;j++)
  f>>s[i][j];
while(c!=0){c--;
ok=1;

for(i=1;i<=n;i++)
  for(j=1;j<=n;j++){
       f>>m[i][j];m1[i][n-j+1]=m[i][j];
       if(m[i][j]!=s[i][j])
           ok=0;}
/* dupa rotirea1 CCW */

if(ok==0){
ok=1;
for(j=n;j>=1;j--)
  for(i=1;i<=n;i++)
   if(m[i][j]!=s[n-j+1][i])
	ok=0;
/* dupa rotirea2 CCW */

if(ok==0){
ok=1;
for(i=n;i>=1;i--)
  for(j=n;j>=1;j--)
     if(m[i][j]!=s[n-i+1][n-j+1])
	 ok=0;
/* dupa rotirea3 CCW */

if(ok==0){
ok=1;

for(i=1;i<=n;i++)
  for(j=n;j>=1;j--)
       if(m[j][i]!=s[i][n-j+1])
	   ok=0;}}}

/* avand cartela intoarsa*/
if(ok==0){ok=1;

for(i=1;i<=n;i++)
  for(j=1;j<=n;j++){
       if(m1[i][j]!=s[i][j])
	   ok=0;}

/* dupa rotirea1 CCW */

if(ok==0){
ok=1;
for(j=n;j>=1;j--)
  for(i=1;i<=n;i++)
   if(m1[i][j]!=s[n-j+1][i])
	ok=0;
/* dupa rotirea2 CCW */

if(ok==0){
ok=1;
for(i=n;i>=1;i--)
  for(j=n;j>=1;j--)
     if(m1[i][j]!=s[n-i+1][n-j+1])
	 ok=0;
/* dupa rotirea3 CCW */

if(ok==0){
ok=1;

for(i=1;i<=n;i++)
  for(j=n;j>=1;j--)
       if(m1[j][i]!=s[i][n-j+1])
	  ok=0;}}}}
g<<ok<<'\n';
}

return 0;
}