#include<stdio.h> #include<stdlib.h> #include<ctype.h>  int main(void) { 	int n,s,i,j; 	char a[10][10]={{0}}; 	s=0;n=0; 	 	do{ 	    scanf("%d",&n); //次数を入力 	}while(n>10);  	for(i=0;i<=n-1;i++){ 		fgets(a[i],10,stdin); 		for(j=0;j<=n-1;j++){ 			s=s+atoi("a[i][j]");//文字列表記の数値を整数に変更 		} 	}//魔方陣の入力  	if(s!=(n^2+n)/2){ 		printf("not magic square\n"); 		return 0; 	}//条件１  	for(i=0;i<=n-1;i++,s=0){ 		for(j=0;j<=n-1;j++){ 			s=s+a[i][j]; 		} 		if(s!=(n^3+n/2)){ 			printf("not magic square\n"); 			return 0; 		} 	}//横列の条件  	for(i=0;i<=n-1;i++,s=0){ 		for(j=0;j<=n-1;j++){ 			s=s+a[j][i]; 		} 		if(s!=(n^3+n/2)){ 			printf("not magic square\n"); 			return 0; 		} 	}//縦列の条件  	for(i=0;i<=n-1;i++){ 			s=s+a[i][i]; 		} 	if(s!=(n^3+n/2)){ 		printf("not magic square\n"); 		return 0; 		}//左上からの対角線の条件 	s=0;  	for(i=0;i<=n-1;i++){ 			s=s+a[n-1-i][i]; 		} 	if(s!=(n^3+n/2)){ 		printf("not magic square\n"); 		return 0; 	}//右上からの対角線の条件  	printf("magic square\n");  	return 0; }