#include<iostream>
using namespace std;
int a[105][105];
int main(){
int n,m,x,y,cut;
cin>>n>>m;
for(int i=0;i<=n;i++){
for(int j=0;j<=m;i++){
cin>>a[n][m];
}
}
cin>>x>>y;
for(int i=0;i<=n;i++){
if(a[x][i]==1){
cut++;
}
}
for(int j=0;j<=m;j++){
if(a[j][y]==1){
cut++;
}
}
if(a[x][y]==1){
cut--;
}
cout<<cut;
return 0;
}
题目: 十字激光炮
题目描述
输入一个n行m列的01矩阵地图,1表示该位置上有一名敌人,0表示该位置上没有敌人。先在地图某位置上部署一门十字激光炮,使得可以消灭与它在同一行、同一列格子上的敌人(包括激光炮位置上的敌人)。统计激光炮一炮一共可以消灭多少敌人。
输入格式 第一行两个整数n和m,表示地图的行数和列数。
第二行开始输入n行m列的01矩阵地图,每行各数字之间空格隔开。
最后一行两个整数x和y,表示激光炮部署位置的行数和列数。
输出格式 一个整数,表示消灭的敌人总数。
样例数据 样例输入#1
5 5
0 0 0 0 0
0 1 0 0 0
0 1 1 1 0
0 1 1 1 1
1 1 1 1 1
3 2
样例输出#1
6
数据范围 对100%的数据,
1≤n,m≤100,1≤x≤n,1≤y≤m。