#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 (avdisp < 40 && avdisp >= 5)
return 1;
if (avdisp < 5)
return 3;
if (avdisp > 500)
return 4;
if (abs(avg-avb)+abs(avr-avb) > 50)
return 2;
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 |
Incorrect |
40 ms |
2400 KB |
Output isn't correct |
2 |
Correct |
50 ms |
2468 KB |
Output is correct |
3 |
Incorrect |
31 ms |
3156 KB |
Output isn't correct |
4 |
Correct |
44 ms |
2624 KB |
Output is correct |
5 |
Correct |
24 ms |
1484 KB |
Output is correct |
6 |
Correct |
45 ms |
2696 KB |
Output is correct |
7 |
Incorrect |
47 ms |
3148 KB |
Output isn't correct |
8 |
Correct |
30 ms |
1716 KB |
Output is correct |
9 |
Incorrect |
45 ms |
3148 KB |
Output isn't correct |
10 |
Correct |
57 ms |
3104 KB |
Output is correct |
11 |
Correct |
54 ms |
3220 KB |
Output is correct |
12 |
Incorrect |
50 ms |
2984 KB |
Output isn't correct |
13 |
Correct |
36 ms |
2188 KB |
Output is correct |
14 |
Incorrect |
41 ms |
2516 KB |
Output isn't correct |
15 |
Correct |
39 ms |
3124 KB |
Output is correct |
16 |
Incorrect |
41 ms |
2388 KB |
Output isn't correct |
17 |
Incorrect |
44 ms |
3204 KB |
Output isn't correct |
18 |
Correct |
45 ms |
3224 KB |
Output is correct |
19 |
Correct |
37 ms |
3156 KB |
Output is correct |
20 |
Correct |
30 ms |
1876 KB |
Output is correct |
21 |
Correct |
45 ms |
2596 KB |
Output is correct |
22 |
Correct |
48 ms |
2652 KB |
Output is correct |
23 |
Correct |
41 ms |
3164 KB |
Output is correct |
24 |
Correct |
55 ms |
3172 KB |
Output is correct |
25 |
Correct |
55 ms |
3180 KB |
Output is correct |
26 |
Incorrect |
46 ms |
3220 KB |
Output isn't correct |
27 |
Correct |
38 ms |
3160 KB |
Output is correct |
28 |
Incorrect |
33 ms |
3124 KB |
Output isn't correct |
29 |
Correct |
44 ms |
3144 KB |
Output is correct |
30 |
Incorrect |
53 ms |
3156 KB |
Output isn't correct |
31 |
Correct |
28 ms |
1680 KB |
Output is correct |
32 |
Incorrect |
39 ms |
2508 KB |
Output isn't correct |
33 |
Incorrect |
35 ms |
2072 KB |
Output isn't correct |
34 |
Incorrect |
35 ms |
2052 KB |
Output isn't correct |
35 |
Correct |
37 ms |
3148 KB |
Output is correct |
36 |
Correct |
44 ms |
3160 KB |
Output is correct |
37 |
Correct |
44 ms |
2708 KB |
Output is correct |
38 |
Correct |
54 ms |
3064 KB |
Output is correct |
39 |
Incorrect |
48 ms |
2796 KB |
Output isn't correct |
40 |
Incorrect |
51 ms |
3220 KB |
Output isn't correct |
41 |
Incorrect |
44 ms |
3180 KB |
Output isn't correct |
42 |
Correct |
23 ms |
1480 KB |
Output is correct |
43 |
Correct |
11 ms |
852 KB |
Output is correct |
44 |
Incorrect |
35 ms |
3136 KB |
Output isn't correct |
45 |
Incorrect |
43 ms |
2540 KB |
Output isn't correct |
46 |
Correct |
47 ms |
3148 KB |
Output is correct |
47 |
Correct |
44 ms |
2624 KB |
Output is correct |
48 |
Incorrect |
42 ms |
2644 KB |
Output isn't correct |
49 |
Correct |
44 ms |
3188 KB |
Output is correct |
50 |
Correct |
46 ms |
2764 KB |
Output is correct |
51 |
Incorrect |
35 ms |
3196 KB |
Output isn't correct |
52 |
Incorrect |
38 ms |
3120 KB |
Output isn't correct |
53 |
Incorrect |
41 ms |
2528 KB |
Output isn't correct |
54 |
Correct |
33 ms |
3156 KB |
Output is correct |
55 |
Incorrect |
50 ms |
3160 KB |
Output isn't correct |
56 |
Incorrect |
45 ms |
2764 KB |
Output isn't correct |
57 |
Incorrect |
13 ms |
3156 KB |
Output isn't correct |
58 |
Incorrect |
32 ms |
3212 KB |
Output isn't correct |
59 |
Incorrect |
48 ms |
3128 KB |
Output isn't correct |
60 |
Incorrect |
45 ms |
2600 KB |
Output isn't correct |
61 |
Incorrect |
44 ms |
3116 KB |
Output isn't correct |
62 |
Correct |
24 ms |
1516 KB |
Output is correct |
63 |
Correct |
38 ms |
3184 KB |
Output is correct |
64 |
Incorrect |
53 ms |
3148 KB |
Output isn't correct |
65 |
Correct |
50 ms |
3108 KB |
Output is correct |
66 |
Correct |
29 ms |
1792 KB |
Output is correct |
67 |
Correct |
43 ms |
3152 KB |
Output is correct |
68 |
Correct |
45 ms |
3116 KB |
Output is correct |
69 |
Incorrect |
42 ms |
2572 KB |
Output isn't correct |
70 |
Correct |
54 ms |
3148 KB |
Output is correct |
71 |
Incorrect |
27 ms |
3224 KB |
Output isn't correct |
72 |
Incorrect |
50 ms |
2752 KB |
Output isn't correct |
73 |
Correct |
28 ms |
1812 KB |
Output is correct |
74 |
Correct |
51 ms |
3148 KB |
Output is correct |
75 |
Incorrect |
47 ms |
2780 KB |
Output isn't correct |
76 |
Correct |
54 ms |
3092 KB |
Output is correct |
77 |
Correct |
45 ms |
3220 KB |
Output is correct |
78 |
Incorrect |
47 ms |
2776 KB |
Output isn't correct |
79 |
Incorrect |
44 ms |
2380 KB |
Output isn't correct |
80 |
Correct |
53 ms |
3256 KB |
Output is correct |
81 |
Incorrect |
44 ms |
3148 KB |
Output isn't correct |
82 |
Correct |
36 ms |
2124 KB |
Output is correct |
83 |
Incorrect |
45 ms |
2764 KB |
Output isn't correct |
84 |
Correct |
43 ms |
3160 KB |
Output is correct |
85 |
Correct |
38 ms |
3148 KB |
Output is correct |
86 |
Incorrect |
46 ms |
3116 KB |
Output isn't correct |
87 |
Incorrect |
45 ms |
2688 KB |
Output isn't correct |
88 |
Correct |
48 ms |
2544 KB |
Output is correct |
89 |
Incorrect |
35 ms |
3156 KB |
Output isn't correct |
90 |
Incorrect |
46 ms |
3180 KB |
Output isn't correct |
91 |
Correct |
34 ms |
2060 KB |
Output is correct |
92 |
Incorrect |
43 ms |
3212 KB |
Output isn't correct |
93 |
Correct |
44 ms |
3192 KB |
Output is correct |
94 |
Correct |
32 ms |
3140 KB |
Output is correct |
95 |
Correct |
43 ms |
2416 KB |
Output is correct |
96 |
Incorrect |
40 ms |
2420 KB |
Output isn't correct |
97 |
Incorrect |
44 ms |
3148 KB |
Output isn't correct |
98 |
Correct |
53 ms |
3152 KB |
Output is correct |
99 |
Correct |
47 ms |
3156 KB |
Output is correct |
100 |
Correct |
56 ms |
3188 KB |
Output is correct |
101 |
Correct |
45 ms |
3092 KB |
Output is correct |
102 |
Incorrect |
40 ms |
3128 KB |
Output isn't correct |