小童在“我的世界”开了一个 n×n 的方阵 A。现在他有 m 个火把,分别放在了 m 个位置。放在 A[x][y] 的火把能够照第 x 行和第 y 列的所有位置。如下图。

没有光也没有火把的地方会生成一个怪物。用字符 F 表示火把,字符 L 表示光,字符 M 表示怪物,请输出方阵 A 的情况。
第一行两个正整数 n 和 m,用空格隔开。 接下来 m 行,每行两个整数 x,y,表示一个火把的被放在了第 x 行和第 y 列交叉的位置。
n 行,每行 n 个字符,用空格隔开。
3 2
2 1
1 3
L L F
F L L
L M L
1≤n≤100,1≤m≤25
#include<bits/stdc++.h>
using namespace std;
char a[114][114];
int main(){
int n,m,x,y;
cin>>n>>m;
for(int i=1;i<=m;i++){
cin>>x>>y;
a[x][y]='F';//输入并标记火把
for(int j=1;j<=n;j++){
for(int k=1;k<=n;k++){
if(j==x && a[j][k]!='F'){
//在火把那行标记为光
a[j][k]='L';
}
if(k==y && a[j][k]!='F'){
//在火把那列标记为光
a[j][k]='L';
}
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j]!='F' || a[i][j]!='L'){
//不是光或火把就是怪物
a[i][j]='M';
}
cout<<a[i][j]<<' ';
}
cout<<"\n";
}
return 0;
}