답안 #464451

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
464451 2021-08-13T08:51:32 Z TheScrasse Hop (COCI21_hop) C++14
110 / 110
46 ms 1348 KB
#include <bits/stdc++.h>
using namespace std;

#define nl "\n"
#define nf endl
#define ll long long
#define pb push_back
#define _ << ' ' <<

#define INF (ll)1e18
#define mod 998244353
#define maxn 1010

ll i, i1, j, k, k1, t, n, m, res, flag[10], a[maxn], b, dp[maxn], mt[maxn][maxn];

array<ll, 3> b4(ll x) {
    array<ll, 3> v;
    v[0] = x % 4; x /= 4;
    v[1] = x % 4; x /= 4;
    v[2] = x % 4;
    return v;
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    /* #if !ONLINE_JUDGE && !EVAL
        ifstream cin("input.txt");
        ofstream cout("output.txt");
    #endif */

    cin >> n;
    for (i = 1; i <= n; i++) {
        cin >> a[i];
    }

    for (i = 1; i <= n; i++) {
        for (j = 1; j < i; j++) {
            if (a[i] % a[j] == 0) dp[i] = max(dp[i], dp[j] + 1);
        }
    }

    for (i = 2; i <= n; i++) {
        for (j = 1; j <= i; j++) {
            if (a[i] % a[j] != 0) {
                cout << 1 << ' '; continue;
            }
            array<ll, 3> x = b4(dp[j]);
            array<ll, 3> y = b4(dp[i]);
            if (x[0] < y[0]) cout << 1 << ' ';
            else if (x[1] < y[1]) cout << 2 << ' ';
            else if (x[2] < y[2]) cout << 3 << ' ';
        }
        cout << nl;
    }

    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 0 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 0 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 332 KB Output is correct
8 Correct 46 ms 1288 KB Output is correct
9 Correct 1 ms 332 KB Output is correct
10 Correct 1 ms 332 KB Output is correct
11 Correct 42 ms 1152 KB Output is correct
12 Correct 45 ms 1344 KB Output is correct
13 Correct 42 ms 1152 KB Output is correct
14 Correct 2 ms 332 KB Output is correct
15 Correct 42 ms 1124 KB Output is correct
16 Correct 42 ms 1188 KB Output is correct
17 Correct 42 ms 1188 KB Output is correct
18 Correct 42 ms 1204 KB Output is correct
19 Correct 42 ms 1220 KB Output is correct
20 Correct 44 ms 1348 KB Output is correct
21 Correct 42 ms 1144 KB Output is correct
22 Correct 41 ms 1088 KB Output is correct
23 Correct 45 ms 1344 KB Output is correct