题解 | #【模板】二维前缀和#
【模板】二维前缀和
https://www.nowcoder.com/practice/99eb8040d116414ea3296467ce81cbbc
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n= in.nextInt(); int m= in.nextInt(); int q= in.nextInt(); long num[][]=new long[n+1][m+1]; long dp[][]=new long[n+1][m+1]; // 注意 hasNext 和 hasNextLine 的区别 for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ num[i][j]=in.nextInt(); dp[i][j]=num[i][j]+dp[i][j-1]; } } for(int i=1;i<=q;i++){ int x1=in.nextInt(); int y1=in.nextInt(); int x2=in.nextInt(); int y2=in.nextInt(); long sum_v=0; for(int j=x1;j<=x2;j++){ sum_v+=dp[j][y2]-dp[j][y1]+num[j][y1]; } System.out.println(sum_v); } } }#23届找工作求助阵地#