P1011
欢迎进入@shuai:弹珠游戏;
题目背景
元宵节不放假挺郁闷的,于是时间机智的改到了星期6一整天!
题目描述
MedalPluS 和他的小伙伴 NOIRP 发掘了一个骨灰级别的游戏——超级弹珠。
游戏的内容是:在一个 n*n 的矩阵里,有若干个敌人,你的弹珠可以摧毁敌人,但只
能攻击你所在的行、列里的所有敌人,然后你就可以获得他们的分数之和,现在请你选择
一个你的位置,使得能击杀的敌人最多,注意,你不能和敌人在一个地方
输入输出格式
输入格式:
输入有两行,第一行一个正整数 n,接下来 n 行,每行 n 列,如果有敌人则为一个正整数,否则为 0
输出格式:
输出共一行,最多分数,如果连你的容身之地都没有,请输出“Bad Game!”
输入输出样例
输入样例#1:
4
1 1 1 0
1 1 1 1
1 1 1 1
0 1 1 1
输出样例#1:
6
代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[5000][5000];
main()
{
int n,count=0,max=0;
scanf("%d",&n);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
scanf("%d",&a[i][j]);
if(a[i][j]==0){
count=1;
}
}
}
if(count==0){
printf("Bad Game!");
return 0;
}
else{
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j]==0){
int k=0;
for(int l=1;l<=n;l++){
k+=a[i][l];
}
for(int l=1;l<=n;l++){
k+=a[l][j];
}
max=(max,k);
}
}
}
printf("%d",max);
}
}
代码解释:
1.这里我们用count来判断二阶矩阵是否都为0;
2.用k来记录每个0位置的行+列的值,用max()函数去最大值
3.想法很low,大佬绕行
4. ***加油努力鸭!QAQ,***,“ — “
源代码图片及运行图片如下
相关题目:
拼数:https://www.luogu.org/problemnew/show/P1012
回文数:https://www.luogu.org/problemnew/show/P1015
进制位:https://www.luogu.org/problemnew/show/P1013
发现错误。联系作者:1939096278@qq.com
欢迎联系呦 -------- QAQ ---------;