Submission #75815673


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
#define MOD 1000000007
#define INF 987654321
#define PI 3.1415926535

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

    int n, m;
    cin >> n >> m;

    vector<int> a(n), b(m);
    vector<int> cnt(1000001, 0);

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

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

    bool done = false;

    vector<int> ans;
    for (int i = 0; i < m; i++)
    {
        if (cnt[b[i]] > 0)
        {
            ans.push_back(b[i]);
            cnt[b[i]]--;
        }
        else
        {
            done = true;
            break;
        }
    }

    if (!done)
    {
        vector<int> pi(m, 0);
        int idx = 0;
        for (int i = 1; i < m; i++)
        {
            while (idx > 0 && b[i] != b[idx])
            {
                idx = pi[idx - 1];
            }
            if (b[i] == b[idx])
            {
                pi[i] = ++idx;
            }
        }

        idx = pi[m - 1];
        while (true)
        {
            for (int i = idx; i < m; i++)
            {
                if (cnt[b[i]] > 0)
                {
                    ans.push_back(b[i]);
                    cnt[b[i]]--;
                }
                else
                {
                    done = true;
                    break;
                }
            }
            if (done)
                break;
        }
    }

    for (int i = 0; i <= 1000000; i++)
    {
        while (cnt[i] > 0)
        {
            ans.push_back(i);
            cnt[i]--;
        }
    }

    for (int an : ans)
    {
        cout << an << ' ';
    }
}

Submission Info

Submission Time
Task C - Rearrangement
User Nyso
Language C++23 (GCC 15.2.0)
Score 100
Code Size 1843 Byte
Status AC
Exec Time 121 ms
Memory 23328 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 50
Set Name Test Cases
Sample 00-sample-001.txt, 00-sample-002.txt
All 00-sample-001.txt, 00-sample-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt, 01-015.txt, 01-016.txt, 01-017.txt, 01-018.txt, 01-019.txt, 01-020.txt, 01-021.txt, 01-022.txt, 01-023.txt, 01-024.txt, 01-025.txt, 01-026.txt, 01-027.txt, 01-028.txt, 01-029.txt, 01-030.txt, 01-031.txt, 01-032.txt, 01-033.txt, 01-034.txt, 01-035.txt, 01-036.txt, 01-037.txt, 01-038.txt, 01-039.txt, 01-040.txt, 01-041.txt, 01-042.txt, 01-043.txt, 01-044.txt, 01-045.txt, 01-046.txt, 01-047.txt, 01-048.txt, 01-049.txt, 01-050.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 3 ms 7060 KiB
00-sample-002.txt AC 3 ms 7232 KiB
01-003.txt AC 3 ms 7204 KiB
01-004.txt AC 3 ms 7256 KiB
01-005.txt AC 3 ms 7208 KiB
01-006.txt AC 3 ms 7192 KiB
01-007.txt AC 3 ms 7256 KiB
01-008.txt AC 3 ms 7204 KiB
01-009.txt AC 63 ms 18712 KiB
01-010.txt AC 5 ms 7376 KiB
01-011.txt AC 10 ms 8300 KiB
01-012.txt AC 16 ms 9288 KiB
01-013.txt AC 24 ms 10764 KiB
01-014.txt AC 65 ms 18132 KiB
01-015.txt AC 74 ms 18864 KiB
01-016.txt AC 114 ms 22796 KiB
01-017.txt AC 67 ms 17428 KiB
01-018.txt AC 99 ms 20636 KiB
01-019.txt AC 51 ms 15420 KiB
01-020.txt AC 69 ms 16928 KiB
01-021.txt AC 62 ms 16152 KiB
01-022.txt AC 55 ms 16616 KiB
01-023.txt AC 50 ms 15316 KiB
01-024.txt AC 98 ms 20616 KiB
01-025.txt AC 61 ms 15384 KiB
01-026.txt AC 74 ms 20120 KiB
01-027.txt AC 61 ms 15448 KiB
01-028.txt AC 63 ms 19784 KiB
01-029.txt AC 60 ms 15316 KiB
01-030.txt AC 54 ms 15412 KiB
01-031.txt AC 99 ms 23292 KiB
01-032.txt AC 67 ms 16664 KiB
01-033.txt AC 83 ms 19732 KiB
01-034.txt AC 121 ms 23320 KiB
01-035.txt AC 117 ms 23328 KiB
01-036.txt AC 118 ms 23324 KiB
01-037.txt AC 84 ms 21764 KiB
01-038.txt AC 80 ms 21048 KiB
01-039.txt AC 93 ms 23048 KiB
01-040.txt AC 95 ms 23040 KiB
01-041.txt AC 75 ms 20896 KiB
01-042.txt AC 90 ms 22644 KiB
01-043.txt AC 70 ms 19900 KiB
01-044.txt AC 88 ms 22224 KiB
01-045.txt AC 72 ms 20076 KiB
01-046.txt AC 85 ms 21688 KiB
01-047.txt AC 58 ms 17720 KiB
01-048.txt AC 60 ms 17684 KiB
01-049.txt AC 69 ms 19224 KiB
01-050.txt AC 66 ms 19480 KiB