Submission #56535494
Source Code Expand
/*
-------------- | /
| | /
| | /
| * |/ | | ------ *
| | | | / \
| | |\ | | | |\ |
\ | | | \ | | | | \ |
\ | | | \ | | \ / \ |
V | | \ \__/| ----- \ |
*/
#ifdef EMT
#include "Header/stdc++.h"
#else
#include <bits/stdc++.h>
#endif
using namespace std;
#ifdef EMT
#define debug(x) cerr << "\e[1;31m" << #x << " = " << (x) << "\e[0m\n"
#define print(x) emilia_mata_tenshi(#x, begin(x), end(x))
template<typename T, typename T2> ostream& operator<<(ostream &os, const pair<T, T2> &obj) {
return os << '{' << obj.first << ',' << obj.second << '}';
}
template<class TupType, size_t... I> void lamy_kawaii(ostream& os, const TupType& _tup, index_sequence<I...>) {
// source: https://stackoverflow.com/a/41171552
os << '{';
(..., (cerr << (I == 0? "" : ",") << get<I>(_tup)));
os << '}';
}
template<class... T> ostream& operator<<(ostream &os, const tuple<T...>& _tup) {
lamy_kawaii(os, _tup, make_index_sequence<sizeof...(T)>());
return os;
}
template<typename T> void emilia_mata_tenshi(const char *s, T l, T r) {
cerr << "\e[1;33m" << s << " = [";
while (l != r) {
cerr << *l;
cerr << (++l == r ? ']' : ',');
}
cerr << "\e[0m\n";
}
#else
#define debug(x) 48763
#define print(x) 48763
#endif
template<typename T, typename T2> istream& operator>>(istream &is, pair<T, T2> &obj) {
is >> obj.first >> obj.second;
return is;
}
template<typename T> istream& operator>>(istream &is, vector<T> &obj) {
for (auto &x : obj)
is >> x;
return is;
}
#define YN(x) ((x) ? "YES" : "NO")
#define Yn(x) ((x) ? "Yes" : "No")
#define yn(x) ((x) ? "yes" : "no")
#define emilia_my_wife ios::sync_with_stdio(0); cin.tie(NULL);
using ll = int64_t;
using ull = uint64_t;
using ld = long double;
using uint = uint32_t;
template<typename T>
using base_type = remove_cv_t<remove_reference_t<T>>;
const double EPS = 1e-8;
const int INF = 0x3F3F3F3F;
const ll LINF = 4611686018427387903;
const int MOD = 1e9+7;
static int Lamy_is_cute = []() {
emilia_my_wife
return 48763;
}();
/*--------------------------------------------------------------------------------------*/
const int N = 105;
int sum[N][N][N];
signed main() {
int n;
cin >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
for (int k = 1; k <= n; k++) {
cin >> sum[i][j][k];
sum[i][j][k] = sum[i][j][k]
+ sum[i - 1][j][k] + sum[i][j - 1][k] + sum[i][j][k - 1]
- sum[i - 1][j - 1][k] - sum[i - 1][j][k - 1] - sum[i][j - 1][k - 1]
+ sum[i - 1][j - 1][k - 1];
}
int q;
cin >> q;
while (q--) {
int l1, r1, l2, r2, l3, r3;
cin >> l1 >> r1 >> l2 >> r2 >> l3 >> r3;
l1--; l2--; l3--;
cout << sum[r1][r2][r3]
- sum[l1][r2][r3] - sum[r1][l2][r3] - sum[r1][r2][l3]
+ sum[l1][l2][r3] + sum[r1][l2][l3] + sum[l1][r2][l3]
- sum[l1][l2][l3] << '\n';
}
}
Submission Info
Submission Time |
|
Task |
D - Cuboid Sum Query |
User |
JiKuai |
Language |
C++ 20 (gcc 12.2) |
Score |
400 |
Code Size |
3501 Byte |
Status |
AC |
Exec Time |
84 ms |
Memory |
7840 KiB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
400 / 400 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_sample_00.txt, 00_sample_01.txt |
All |
00_sample_00.txt, 00_sample_01.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 02_maximum_00.txt, 02_maximum_01.txt, 02_maximum_02.txt, 02_maximum_03.txt, 02_maximum_04.txt |
Case Name |
Status |
Exec Time |
Memory |
00_sample_00.txt |
AC |
1 ms |
3396 KiB |
00_sample_01.txt |
AC |
1 ms |
3488 KiB |
01_random_00.txt |
AC |
84 ms |
7604 KiB |
01_random_01.txt |
AC |
66 ms |
7744 KiB |
01_random_02.txt |
AC |
64 ms |
6468 KiB |
01_random_03.txt |
AC |
53 ms |
5392 KiB |
01_random_04.txt |
AC |
79 ms |
7756 KiB |
01_random_05.txt |
AC |
53 ms |
7724 KiB |
01_random_06.txt |
AC |
62 ms |
6356 KiB |
01_random_07.txt |
AC |
47 ms |
4544 KiB |
01_random_08.txt |
AC |
63 ms |
7016 KiB |
01_random_09.txt |
AC |
64 ms |
7212 KiB |
01_random_10.txt |
AC |
82 ms |
7544 KiB |
01_random_11.txt |
AC |
71 ms |
6752 KiB |
01_random_12.txt |
AC |
44 ms |
5076 KiB |
01_random_13.txt |
AC |
73 ms |
7744 KiB |
01_random_14.txt |
AC |
80 ms |
7720 KiB |
02_maximum_00.txt |
AC |
84 ms |
7788 KiB |
02_maximum_01.txt |
AC |
82 ms |
7840 KiB |
02_maximum_02.txt |
AC |
80 ms |
7708 KiB |
02_maximum_03.txt |
AC |
80 ms |
7772 KiB |
02_maximum_04.txt |
AC |
79 ms |
7772 KiB |