CSES - Leirikisa 9.12.2021 - Results
Submission details
Task:Kartta
Sender:Mahtimursu
Submission time:2021-12-09 16:16:15 +0200
Language:C++ (C++17)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
#40
Test results
testverdicttimegroup
#10.02 s1details
#20.02 s2details
#30.03 s3details
#40.11 s4details

Code

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef long double ld;

#define M 1000000007

int mp[101][101];

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n, m, h;
    cin >> n >> m >> h;

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < m; ++j) {
            cin >> mp[i][j];
        }
    }

    int mod = 33;

    int st = 0;

    for (int k = 1; k <= mod; ++k) {
        for (int i = 0; i < n; ++i) {
            for (int j = 0; j < m; ++j) {
                if (mp[i][j] % mod == k || (mp[i][j] % mod == 0 && k == mod)) {
                    cout << "S";
                } else {
                    cout << "L";
                }
            }
            cout << "\n";
        }
        st++;
    }

    //cout << "next: " << st + 1 << endl;

    for (int k = mod + 1; k <= h; k += mod) {
        for (int i = 0; i < n; ++i) {
            for (int j = 0; j < m; ++j) {
                if (mp[i][j] >= k) {
                    cout << "V";
                } else {
                    cout << "L";
                }
            }
            cout << "\n";
        }
        st++;
    }

    //cout << "overload" << endl;

    while (st < 40) {
        st++;
        for (int i = 0; i < n; ++i) {
            for (int j = 0; j < m; ++j) {
                cout << "V";
            }
            cout << "\n";
        }
    }

    if (st != 40) {
        cout << st << endl;
        exit(-1);
    }

    cout << "1 40\n";
    for (int i = 2; i <= h; ++i) {
        vector<int> ans;
        ans.push_back(40);

        int md = (i % mod == 0) ? mod : (i % mod);

        for (int k = 1; k < md; ++k) {
            ans.push_back(k);
        }

        int level = i / mod;

        if (level + 1 + mod <= h)
            ans.push_back(level + 1 + mod);

        //cout << "H: " << i << " = ";

        cout << ans.size() << " ";
        for (int x : ans) {
            cout << x << " ";
        }
        cout << "\n";
    }


    return 0;
}

Test details

Test 1

Group: 1

Verdict:

input
100 100 40
40 11 38 24 5 31 40 10 17 33 1...

correct output
(empty)

user output
LLLLLLLLLLLLLLLLLLLLLLLLLLLLLL...
Truncated

Test 2

Group: 2

Verdict:

input
100 100 200
200 71 185 86 113 84 170 60 17...

correct output
(empty)

user output
LLLLLLLLLLLLLLLLLLLLLLLLLSLLLL...
Truncated

Test 3

Group: 3

Verdict:

input
100 100 1000
824 172 828 721 509 73 437 530...

correct output
(empty)

user output
LLLLLLLLSLLLLLLLLLLLLLLLLLLLLL...
Truncated

Test 4

Group: 4

Verdict:

input
100 100 10000
7110 9439 3392 1630 368 8481 1...

correct output
(empty)

user output
LSLLLLLLLLSLLLLLLLSLLLLLLLLLLL...
Truncated