# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
118261 | 2019-06-18T13:17:51 Z | Charis02 | Bitaro the Brave (JOI19_ho_t1) | C++14 | 416 ms | 274432 KB |
#include<iostream> #include<stdio.h> #include<vector> #include<cmath> #include<queue> #include<string.h> #include<map> #include<set> #include<algorithm> #define ll unsigned long long #define pi pair < ll,ll > #define mp(a,b) make_pair(a,b) #define rep(i,a,b) for(int i = a;i < b;i++) #define N 5004 #define INF 1e9+7 using namespace std; ll n,m,ans; ll orbs[N][N],jewels[N][N],ignots[N][N]; ll sumo[N][N],sumi[N][N]; char c; ll get_orbs(ll si,ll sj,ll ei,ll ej) { if(si == 0 && sj == 0) return sumo[ei][ej]; else if(si == 0) return sumo[ei][ej] - sumo[ei][sj-1]; else if(sj == 0) return sumo[ei][ej] - sumo[si-1][ej]; return sumo[ei][ej] - sumo[si-1][ej] - sumo[ei][sj-1] + sumo[si-1][sj-1]; } ll get_ignots(ll si,ll sj,ll ei,ll ej) { if(si == 0 && sj == 0) return sumi[ei][ej]; else if(si == 0) return sumi[ei][ej] - sumi[ei][sj-1]; else if(sj == 0) return sumi[ei][ej] - sumi[si-1][ej]; return sumi[ei][ej] - sumi[si-1][ej] - sumi[ei][sj-1] + sumi[si-1][sj-1]; } int main() { ios_base::sync_with_stdio(false); cin >> n >> m; rep(i,0,n) { rep(j,0,m) { cin >> c; if(c == 'J') jewels[i][j] = 1; else if(c == 'O') orbs[i][j] = 1; else ignots[i][j] = 1; } } rep(i,0,n) { rep(j,0,m) { if(i == 0 && j == 0) { sumi[i][j] = ignots[i][j]; sumo[i][j] = orbs[i][j]; } else if(i == 0) { sumi[i][j] = sumi[i][j-1]+ignots[i][j]; sumo[i][j] = sumo[i][j-1]+orbs[i][j]; } else if(j == 0) { sumi[i][j] = sumi[i-1][j]+ignots[i][j]; sumo[i][j] = sumo[i-1][j]+orbs[i][j]; } else { sumi[i][j] = sumi[i-1][j] - sumi[i-1][j-1] + sumi[i][j-1]+ ignots[i][j]; sumo[i][j] = sumo[i-1][j] - sumo[i-1][j-1] + sumo[i][j-1] + orbs[i][j]; } } } rep(i,0,n) { rep(j,0,m) { if(i != n-1 && j != m-1 && jewels[i][j]) { ans = (ans + get_ignots(i,j,n-1,j)*get_orbs(i,j,i,m-1)); } } } cout << ans; return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 640 KB | Output is correct |
5 | Correct | 4 ms | 2816 KB | Output is correct |
6 | Correct | 4 ms | 2560 KB | Output is correct |
7 | Correct | 3 ms | 2176 KB | Output is correct |
8 | Correct | 4 ms | 2816 KB | Output is correct |
9 | Correct | 4 ms | 2688 KB | Output is correct |
10 | Correct | 4 ms | 2304 KB | Output is correct |
11 | Correct | 4 ms | 2816 KB | Output is correct |
12 | Correct | 4 ms | 2560 KB | Output is correct |
13 | Correct | 4 ms | 2176 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 640 KB | Output is correct |
5 | Correct | 4 ms | 2816 KB | Output is correct |
6 | Correct | 4 ms | 2560 KB | Output is correct |
7 | Correct | 3 ms | 2176 KB | Output is correct |
8 | Correct | 4 ms | 2816 KB | Output is correct |
9 | Correct | 4 ms | 2688 KB | Output is correct |
10 | Correct | 4 ms | 2304 KB | Output is correct |
11 | Correct | 4 ms | 2816 KB | Output is correct |
12 | Correct | 4 ms | 2560 KB | Output is correct |
13 | Correct | 4 ms | 2176 KB | Output is correct |
14 | Correct | 23 ms | 17920 KB | Output is correct |
15 | Correct | 8 ms | 7808 KB | Output is correct |
16 | Correct | 12 ms | 9064 KB | Output is correct |
17 | Correct | 3 ms | 640 KB | Output is correct |
18 | Correct | 26 ms | 20212 KB | Output is correct |
19 | Correct | 22 ms | 18048 KB | Output is correct |
20 | Correct | 20 ms | 15104 KB | Output is correct |
21 | Correct | 26 ms | 20224 KB | Output is correct |
22 | Correct | 21 ms | 18040 KB | Output is correct |
23 | Correct | 20 ms | 15128 KB | Output is correct |
24 | Correct | 27 ms | 20224 KB | Output is correct |
25 | Correct | 22 ms | 18040 KB | Output is correct |
26 | Correct | 22 ms | 15104 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 640 KB | Output is correct |
5 | Correct | 4 ms | 2816 KB | Output is correct |
6 | Correct | 4 ms | 2560 KB | Output is correct |
7 | Correct | 3 ms | 2176 KB | Output is correct |
8 | Correct | 4 ms | 2816 KB | Output is correct |
9 | Correct | 4 ms | 2688 KB | Output is correct |
10 | Correct | 4 ms | 2304 KB | Output is correct |
11 | Correct | 4 ms | 2816 KB | Output is correct |
12 | Correct | 4 ms | 2560 KB | Output is correct |
13 | Correct | 4 ms | 2176 KB | Output is correct |
14 | Correct | 23 ms | 17920 KB | Output is correct |
15 | Correct | 8 ms | 7808 KB | Output is correct |
16 | Correct | 12 ms | 9064 KB | Output is correct |
17 | Correct | 3 ms | 640 KB | Output is correct |
18 | Correct | 26 ms | 20212 KB | Output is correct |
19 | Correct | 22 ms | 18048 KB | Output is correct |
20 | Correct | 20 ms | 15104 KB | Output is correct |
21 | Correct | 26 ms | 20224 KB | Output is correct |
22 | Correct | 21 ms | 18040 KB | Output is correct |
23 | Correct | 20 ms | 15128 KB | Output is correct |
24 | Correct | 27 ms | 20224 KB | Output is correct |
25 | Correct | 22 ms | 18040 KB | Output is correct |
26 | Correct | 22 ms | 15104 KB | Output is correct |
27 | Runtime error | 416 ms | 274432 KB | Execution killed with signal 9 (could be triggered by violating memory limits) |
28 | Halted | 0 ms | 0 KB | - |