221902026-01-14 17:41:44hunzombiSorozat generáláscpp17Hibás válasz 28/5017ms2100 KiB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef vector<ll> vi;

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

    ll m, x, a, b, n, k;

    cin >> m >> x >> a >> b >> n >> k;

    ll p = 1;
    for (ll i=0; i < m; i++) p *= 10;
    ll p2 = p * p;

    vi seq;
    seq.reserve(n);

    unordered_map<ll, ll> last_pos;
    last_pos.reserve(n);

    ll ans_dist = INT_MAX;

    ll curr = x;

    for (ll i=0; i < n; i++) {
        ll y = curr * a + b;

        int next = (y / p) % p2;

        seq.push_back(next);

        if (last_pos.count(next)) {
            ans_dist = min(ans_dist, i - last_pos[next]);
        }
        last_pos[next] = i;

        curr = next;
    }

    sort(seq.begin(), seq.end());

    cout << ans_dist << '\n' << seq[k] << '\n';

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base28/50
1Elfogadva0/01ms316 KiB
2Hibás válasz0/017ms1844 KiB
3Részben helyes1/21ms316 KiB
4Részben helyes1/22ms316 KiB
5Részben helyes1/21ms316 KiB
6Részben helyes1/21ms316 KiB
7Elfogadva2/22ms316 KiB
8Részben helyes2/42ms316 KiB
9Részben helyes2/44ms568 KiB
10Részben helyes2/48ms1004 KiB
11Részben helyes2/48ms1136 KiB
12Részben helyes2/410ms1356 KiB
13Elfogadva4/414ms1856 KiB
14Részben helyes2/414ms1924 KiB
15Részben helyes2/414ms2100 KiB
16Részben helyes2/417ms1872 KiB
17Részben helyes2/417ms1992 KiB