十年OI一场空,不开long long 见祖宗。
#include <iostream> #include <queue> #include <map> #include <set> #include <cmath> #include <cstring> #include <algorithm> #include <iomanip> #include <stack> #include <numeric> #include <ctime> #include <string> #include <bitset> #include <unordered_map> #include <unordered_set> using namespace std; using ll = long long; const ll N = 1e5 + 5, mod = 1e9 + 7, inf = 0x3f3f3f3f; int n,m,q; void solve() { cin>>n>>m>>q; vector<vector<ll>> a(n+5,vector<ll>(m+5)); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; a[i][j]+=a[i-1][j]+a[i][j-1]-a[i-1][j-1]; } } while(q--){ int x1,y1,x2,y2; cin>>x1>>y1>>x2>>y2; cout<<a[x2][y2]-a[x1-1][y2]-a[x2][y1-1]+a[x1-1][y1-1]<<'\n'; } } int main() { ios::sync_with_stdio(0), cin.tie(0), cout.tie(0); int t = 1; //cin >> t; while (t--) { solve(); } return 0; }