Submission #679853

# Submission time Handle Problem Language Result Execution time Memory
679853 2023-01-09T12:50:07 Z bashkort Art Class (IOI13_artclass) C++17
1 / 100
211 ms 6220 KB
#include "artclass.h"
#include <bits/stdc++.h>

using namespace std;

int n, m, R[500][500], G[500][500], B[500][500];

int dist(int i, int j, int x, int y) {
    return abs(R[i][j] - R[x][y]) + abs(B[i][j] - B[x][y]) + abs(G[i][j] - G[x][y]);
}

bool black(int i, int j) {
    return R[i][j] + B[i][j] + G[i][j] <= 20;
}

int same(int i, int j, int x, int y) {
    return dist(i, j, x, y) <= 20;
}

int color_number() {
    vector<pair<int, int>> cols;

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < m; ++j) {
            bool any = false;

            for (auto [x, y] : cols) {
                if (same(i, j, x, y)) {
                    any = true;
                    break;
                }
            }

            if (!any) {
                cols.emplace_back(i, j);
            }
        }
    }

    return cols.size();
}

int black_number() {
    int ans = 0;

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < m; ++j) {
            if (black(i, j)) {
                ans += 1;
            }
        }
    }

    return ans;
}

int check1() {

}

int check2() {

}

int check3() {

}

int check4() {

}

int style(int n, int m, int R[500][500], int G[500][500], int B[500][500]) {
    memcpy(::R, R, sizeof(::R)), memcpy(::G, G, sizeof(::G)), memcpy(::B, B, sizeof(::B));
    ::n = n, ::m = m;

    int color_cnt = color_number();
    int black_cnt = black_number();

    if (color_cnt > 20 && black_cnt > 10) {
        return 3;
    }
    if (color_cnt < 10 && black_cnt > 10) {
        return 1;
    }
    if (color_cnt < 10) {
        return 4;
    }

    return 2;
}

Compilation message

artclass.cpp: In function 'int check1()':
artclass.cpp:59:1: warning: no return statement in function returning non-void [-Wreturn-type]
   59 | }
      | ^
artclass.cpp: In function 'int check2()':
artclass.cpp:63:1: warning: no return statement in function returning non-void [-Wreturn-type]
   63 | }
      | ^
artclass.cpp: In function 'int check3()':
artclass.cpp:67:1: warning: no return statement in function returning non-void [-Wreturn-type]
   67 | }
      | ^
artclass.cpp: In function 'int check4()':
artclass.cpp:71:1: warning: no return statement in function returning non-void [-Wreturn-type]
   71 | }
      | ^
# Verdict Execution time Memory Grader output
1 Incorrect 44 ms 6036 KB Output isn't correct
2 Correct 83 ms 6092 KB Output is correct
3 Incorrect 111 ms 5744 KB Output isn't correct
4 Incorrect 51 ms 6100 KB Output isn't correct
5 Incorrect 94 ms 6152 KB Output isn't correct
6 Incorrect 97 ms 6156 KB Output isn't correct
7 Incorrect 90 ms 5592 KB Output isn't correct
8 Incorrect 83 ms 6172 KB Output isn't correct
9 Correct 75 ms 5108 KB Output is correct
10 Correct 57 ms 5400 KB Output is correct
11 Incorrect 111 ms 6120 KB Output isn't correct
12 Incorrect 80 ms 6108 KB Output isn't correct
13 Incorrect 76 ms 5204 KB Output isn't correct
14 Incorrect 94 ms 6152 KB Output isn't correct
15 Incorrect 66 ms 6112 KB Output isn't correct
16 Correct 54 ms 6112 KB Output is correct
17 Correct 55 ms 5108 KB Output is correct
18 Incorrect 56 ms 5452 KB Output isn't correct
19 Incorrect 71 ms 5668 KB Output isn't correct
20 Correct 87 ms 6164 KB Output is correct
21 Incorrect 54 ms 6156 KB Output isn't correct
22 Correct 112 ms 6160 KB Output is correct
23 Incorrect 50 ms 6040 KB Output isn't correct
24 Correct 51 ms 4768 KB Output is correct
25 Incorrect 60 ms 5364 KB Output isn't correct
26 Correct 54 ms 6092 KB Output is correct
27 Correct 135 ms 5740 KB Output is correct
28 Incorrect 56 ms 6088 KB Output isn't correct
29 Correct 91 ms 6072 KB Output is correct
30 Incorrect 74 ms 6156 KB Output isn't correct
31 Incorrect 108 ms 5524 KB Output isn't correct
32 Incorrect 52 ms 6092 KB Output isn't correct
33 Incorrect 100 ms 6036 KB Output isn't correct
34 Incorrect 91 ms 6112 KB Output isn't correct
35 Incorrect 131 ms 5512 KB Output isn't correct
36 Incorrect 127 ms 6164 KB Output isn't correct
37 Incorrect 65 ms 6140 KB Output isn't correct
38 Incorrect 101 ms 6104 KB Output isn't correct
39 Incorrect 148 ms 6156 KB Output isn't correct
40 Incorrect 62 ms 6156 KB Output isn't correct
41 Incorrect 87 ms 6048 KB Output isn't correct
42 Incorrect 14 ms 6100 KB Output isn't correct
43 Incorrect 78 ms 5580 KB Output isn't correct
44 Incorrect 65 ms 5516 KB Output isn't correct
45 Incorrect 51 ms 6084 KB Output isn't correct
46 Correct 92 ms 5496 KB Output is correct
47 Incorrect 89 ms 5584 KB Output isn't correct
48 Correct 64 ms 5380 KB Output is correct
49 Incorrect 48 ms 6108 KB Output isn't correct
50 Correct 84 ms 5524 KB Output is correct
51 Incorrect 99 ms 5696 KB Output isn't correct
52 Incorrect 106 ms 5444 KB Output isn't correct
53 Correct 49 ms 4416 KB Output is correct
54 Correct 81 ms 6168 KB Output is correct
55 Correct 53 ms 4948 KB Output is correct
56 Correct 78 ms 4660 KB Output is correct
57 Incorrect 73 ms 6056 KB Output isn't correct
58 Incorrect 74 ms 6092 KB Output isn't correct
59 Incorrect 125 ms 6092 KB Output isn't correct
60 Incorrect 53 ms 6156 KB Output isn't correct
61 Incorrect 112 ms 6156 KB Output isn't correct
62 Correct 16 ms 3796 KB Output is correct
63 Correct 135 ms 5512 KB Output is correct
64 Incorrect 50 ms 5792 KB Output isn't correct
65 Correct 63 ms 5664 KB Output is correct
66 Correct 80 ms 6096 KB Output is correct
67 Incorrect 55 ms 6116 KB Output isn't correct
68 Incorrect 149 ms 6156 KB Output isn't correct
69 Incorrect 126 ms 6108 KB Output isn't correct
70 Incorrect 91 ms 6064 KB Output isn't correct
71 Incorrect 86 ms 6076 KB Output isn't correct
72 Incorrect 105 ms 6100 KB Output isn't correct
73 Correct 85 ms 5012 KB Output is correct
74 Correct 56 ms 6072 KB Output is correct
75 Incorrect 62 ms 6220 KB Output isn't correct
76 Correct 37 ms 4712 KB Output is correct
77 Incorrect 44 ms 6092 KB Output isn't correct
78 Incorrect 211 ms 6056 KB Output isn't correct
79 Incorrect 89 ms 6152 KB Output isn't correct
80 Correct 44 ms 4308 KB Output is correct
81 Incorrect 85 ms 6200 KB Output isn't correct
82 Incorrect 137 ms 6148 KB Output isn't correct
83 Incorrect 88 ms 5320 KB Output isn't correct
84 Incorrect 114 ms 5724 KB Output isn't correct
85 Incorrect 46 ms 6092 KB Output isn't correct
86 Correct 72 ms 6144 KB Output is correct
87 Incorrect 79 ms 5988 KB Output isn't correct
88 Incorrect 38 ms 5588 KB Output isn't correct
89 Correct 75 ms 4436 KB Output is correct
90 Incorrect 49 ms 4736 KB Output isn't correct
91 Incorrect 43 ms 4812 KB Output isn't correct
92 Correct 94 ms 5464 KB Output is correct
93 Correct 92 ms 5548 KB Output is correct
94 Incorrect 75 ms 6172 KB Output isn't correct
95 Incorrect 75 ms 6152 KB Output isn't correct
96 Incorrect 69 ms 5536 KB Output isn't correct
97 Incorrect 57 ms 6012 KB Output isn't correct
98 Incorrect 76 ms 6204 KB Output isn't correct
99 Incorrect 115 ms 6152 KB Output isn't correct
100 Incorrect 74 ms 5676 KB Output isn't correct
101 Incorrect 97 ms 6064 KB Output isn't correct
102 Incorrect 75 ms 5708 KB Output isn't correct