#include "artclass.h"
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define pp pop_back
#define mp make_pair
#define bb back
#define ff first
#define ss second
using namespace std;
bool inbound(pair<int, int> now, int H, int W) {
if (now.ff < 0 || now.ff >= H) return 0;
if (now.ss < 0 || now.ss >= W) return 0;
return 1;
}
int style(int H, int W, int R[500][500], int G[500][500], int B[500][500]) {
pair<int, int> dir[4] = {{0, 1}, {1, 0}, {-1, 0}, {0, -1}};
long long avr = 0, avg = 0, avb = 0, avdisp = 0, now, cnt, total = 0;
for (int i = 0; i < H; i++)
for (int j = 0; j < W; j++) {
avr += R[i][j];
avg += G[i][j];
avb += B[i][j];
now = 0, cnt = 0;
for (int k = 0; k < 4; k++) {
if (!inbound({i+dir[k].ff, j+dir[k].ss}, H, W))
continue;
cnt++;
now += abs(R[i][j]-R[i+dir[k].ff][j+dir[k].ss]);
now += abs(G[i][j]-G[i+dir[k].ff][j+dir[k].ss]);
now += abs(B[i][j]-B[i+dir[k].ff][j+dir[k].ss]);
}
if (cnt) {
now /= cnt*3;
if (now > 40)
avdisp++;
}
}
if (avdisp)
avdisp = H*W/avdisp;
avr /= (H*W);
avg /= (H*W);
avb /= (H*W);
// cout << avr << ' ' << avg << ' ' << avb << ' ' << avdisp << '\n';
if (abs(avg-avb)+abs(avr-avb) > 30)
return 2;
if (avdisp > 500)
return 4;
if (avdisp < 5)
return 3;
return 1;
}
Compilation message
artclass.cpp: In function 'int style(int, int, int (*)[500], int (*)[500], int (*)[500])':
artclass.cpp:21:64: warning: unused variable 'total' [-Wunused-variable]
21 | long long avr = 0, avg = 0, avb = 0, avdisp = 0, now, cnt, total = 0;
| ^~~~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
50 ms |
4848 KB |
Output is correct |
2 |
Correct |
33 ms |
2968 KB |
Output is correct |
3 |
Correct |
58 ms |
5232 KB |
Output is correct |
4 |
Incorrect |
64 ms |
5368 KB |
Output isn't correct |
5 |
Correct |
49 ms |
5072 KB |
Output is correct |
6 |
Incorrect |
54 ms |
5708 KB |
Output isn't correct |
7 |
Correct |
49 ms |
4236 KB |
Output is correct |
8 |
Correct |
50 ms |
4792 KB |
Output is correct |
9 |
Correct |
48 ms |
4800 KB |
Output is correct |
10 |
Correct |
43 ms |
4340 KB |
Output is correct |
11 |
Incorrect |
54 ms |
5380 KB |
Output isn't correct |
12 |
Incorrect |
26 ms |
2364 KB |
Output isn't correct |
13 |
Correct |
58 ms |
5688 KB |
Output is correct |
14 |
Incorrect |
57 ms |
5816 KB |
Output isn't correct |
15 |
Correct |
12 ms |
1344 KB |
Output is correct |
16 |
Correct |
61 ms |
4604 KB |
Output is correct |
17 |
Incorrect |
41 ms |
4936 KB |
Output isn't correct |
18 |
Correct |
48 ms |
5352 KB |
Output is correct |
19 |
Incorrect |
41 ms |
3696 KB |
Output isn't correct |
20 |
Incorrect |
41 ms |
4032 KB |
Output isn't correct |
21 |
Incorrect |
45 ms |
5056 KB |
Output isn't correct |
22 |
Correct |
47 ms |
4256 KB |
Output is correct |
23 |
Incorrect |
60 ms |
4836 KB |
Output isn't correct |
24 |
Incorrect |
30 ms |
3024 KB |
Output isn't correct |
25 |
Correct |
54 ms |
5684 KB |
Output is correct |
26 |
Correct |
47 ms |
4560 KB |
Output is correct |
27 |
Correct |
54 ms |
4484 KB |
Output is correct |
28 |
Incorrect |
47 ms |
5348 KB |
Output isn't correct |
29 |
Incorrect |
61 ms |
6040 KB |
Output isn't correct |
30 |
Incorrect |
55 ms |
5324 KB |
Output isn't correct |
31 |
Incorrect |
59 ms |
5292 KB |
Output isn't correct |
32 |
Incorrect |
51 ms |
5196 KB |
Output isn't correct |
33 |
Incorrect |
45 ms |
4364 KB |
Output isn't correct |
34 |
Incorrect |
35 ms |
4528 KB |
Output isn't correct |
35 |
Incorrect |
38 ms |
4560 KB |
Output isn't correct |
36 |
Incorrect |
45 ms |
4428 KB |
Output isn't correct |
37 |
Correct |
50 ms |
4564 KB |
Output is correct |
38 |
Incorrect |
50 ms |
5604 KB |
Output isn't correct |
39 |
Incorrect |
41 ms |
5044 KB |
Output isn't correct |
40 |
Incorrect |
38 ms |
3656 KB |
Output isn't correct |
41 |
Correct |
46 ms |
3328 KB |
Output is correct |
42 |
Incorrect |
47 ms |
4984 KB |
Output isn't correct |
43 |
Incorrect |
46 ms |
4280 KB |
Output isn't correct |
44 |
Correct |
63 ms |
5868 KB |
Output is correct |
45 |
Incorrect |
70 ms |
5068 KB |
Output isn't correct |
46 |
Incorrect |
47 ms |
5300 KB |
Output isn't correct |
47 |
Correct |
36 ms |
3748 KB |
Output is correct |
48 |
Incorrect |
63 ms |
5836 KB |
Output isn't correct |
49 |
Correct |
52 ms |
5660 KB |
Output is correct |
50 |
Correct |
50 ms |
4940 KB |
Output is correct |
51 |
Incorrect |
26 ms |
2588 KB |
Output isn't correct |
52 |
Incorrect |
40 ms |
4684 KB |
Output isn't correct |
53 |
Incorrect |
52 ms |
5320 KB |
Output isn't correct |
54 |
Correct |
45 ms |
4320 KB |
Output is correct |
55 |
Incorrect |
43 ms |
4464 KB |
Output isn't correct |
56 |
Correct |
57 ms |
5436 KB |
Output is correct |
57 |
Incorrect |
61 ms |
5324 KB |
Output isn't correct |
58 |
Correct |
56 ms |
5964 KB |
Output is correct |
59 |
Correct |
30 ms |
2976 KB |
Output is correct |
60 |
Incorrect |
61 ms |
5912 KB |
Output isn't correct |
61 |
Incorrect |
48 ms |
4484 KB |
Output isn't correct |
62 |
Incorrect |
18 ms |
3668 KB |
Output isn't correct |
63 |
Correct |
46 ms |
4744 KB |
Output is correct |
64 |
Incorrect |
37 ms |
4884 KB |
Output isn't correct |
65 |
Incorrect |
38 ms |
3580 KB |
Output isn't correct |
66 |
Incorrect |
32 ms |
4364 KB |
Output isn't correct |
67 |
Incorrect |
25 ms |
2440 KB |
Output isn't correct |
68 |
Correct |
56 ms |
5920 KB |
Output is correct |
69 |
Correct |
50 ms |
4888 KB |
Output is correct |
70 |
Correct |
46 ms |
4296 KB |
Output is correct |
71 |
Correct |
61 ms |
5876 KB |
Output is correct |
72 |
Incorrect |
37 ms |
4836 KB |
Output isn't correct |
73 |
Incorrect |
36 ms |
4680 KB |
Output isn't correct |
74 |
Incorrect |
46 ms |
4940 KB |
Output isn't correct |
75 |
Incorrect |
51 ms |
5280 KB |
Output isn't correct |
76 |
Incorrect |
61 ms |
5488 KB |
Output isn't correct |
77 |
Correct |
63 ms |
4644 KB |
Output is correct |
78 |
Incorrect |
36 ms |
4680 KB |
Output isn't correct |
79 |
Correct |
45 ms |
5072 KB |
Output is correct |
80 |
Correct |
31 ms |
3056 KB |
Output is correct |
81 |
Incorrect |
31 ms |
4712 KB |
Output isn't correct |
82 |
Incorrect |
55 ms |
5836 KB |
Output isn't correct |
83 |
Incorrect |
59 ms |
6080 KB |
Output isn't correct |
84 |
Incorrect |
64 ms |
5252 KB |
Output isn't correct |
85 |
Incorrect |
48 ms |
4784 KB |
Output isn't correct |
86 |
Incorrect |
57 ms |
5148 KB |
Output isn't correct |
87 |
Incorrect |
48 ms |
5320 KB |
Output isn't correct |
88 |
Incorrect |
47 ms |
5176 KB |
Output isn't correct |
89 |
Incorrect |
57 ms |
5832 KB |
Output isn't correct |
90 |
Incorrect |
45 ms |
4608 KB |
Output isn't correct |
91 |
Correct |
52 ms |
5352 KB |
Output is correct |
92 |
Incorrect |
49 ms |
5480 KB |
Output isn't correct |
93 |
Incorrect |
50 ms |
5228 KB |
Output isn't correct |
94 |
Correct |
45 ms |
4276 KB |
Output is correct |
95 |
Incorrect |
50 ms |
4876 KB |
Output isn't correct |
96 |
Correct |
45 ms |
4244 KB |
Output is correct |
97 |
Incorrect |
49 ms |
4548 KB |
Output isn't correct |
98 |
Incorrect |
49 ms |
5292 KB |
Output isn't correct |
99 |
Incorrect |
40 ms |
5068 KB |
Output isn't correct |
100 |
Correct |
48 ms |
5236 KB |
Output is correct |
101 |
Incorrect |
62 ms |
5908 KB |
Output isn't correct |
102 |
Incorrect |
48 ms |
5284 KB |
Output isn't correct |