十字爆破 题解

十字爆破

https://ac.nowcoder.com/acm/contest/5600/I

只需要用两个数组记录下每行和每列的和即可
然后用本行和+本列和-当前位置即可
import java.util.*;
import java.math.*;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
import java.io.OutputStreamWriter;
import java.io.BufferedReader;
import java.io.PrintWriter;
public class Main {
    public static void main(String args[])throws IOException {
        StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
        PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
        in.nextToken();
        int n = (int)in.nval;
        in.nextToken();
        int m = (int)in.nval;
        long num[][] = new long[n][m];
        long jieguo[][] = new long[n][m];
        long heng[] = new long[n];
        long shu[] = new long[m];
        for(int i=0;i<n;i++)
            for(int k=0;k<m;k++)
            {
                in.nextToken();
                num[i][k] = (int)in.nval;
                heng[i]+=num[i][k];
                shu[k]+=num[i][k];
            }
       for(int i=0;i<n;i++)
            for(int k=0;k<m;k++)
            {
                jieguo[i][k] = heng[i]+shu[k]-num[i][k];
            }
        for(int i=0;i<n;i++)
        {
            for(int k=0;k<m;k++)
            {
                 
                out.print(jieguo[i][k]+" ");
            }
        out.println();
        }
        out.flush();
    }
}


全部评论

相关推荐

02-19 04:09
门头沟学院 Java
神哥了不得:神哥来啦~有可能只是为了注册账号,这个平台必须发一个招聘才能注册成功的
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务