3434 2023. 02. 27 18:31:20 norbertvida Sorozat generálás cpp17 Elfogadva 50/50 16ms 5524 KiB
#include <bits/stdc++.h>
#define lli long long int

using namespace std;

int main() {
    iostream::sync_with_stdio(0);
    cin.tie(0);
    lli M, X, A, B, N, K;
    cin >> M >> X >> A >> B >> N >> K;
    map<lli, lli> utolso;
    vector<lli> adatok(N);
    utolso[X] = 0;
    lli tiz_m = ((const lli[]){ 10LL, 100LL, 1000LL })[M - 1];
    lli tiz_2m = tiz_m * tiz_m;
    lli i;
    for(i = 0; i < N; i++) {
        X = (((X * A) + B) / tiz_m) % tiz_2m;
        adatok[i] = X;
        if(utolso.count(X)) {
            cout << i - utolso[X] << "\n";
            break;
        }
        utolso[X] = i;
    }
    for(; i < N; i++) {
        X = (((X * A) + B) / tiz_m) % tiz_2m;
        adatok[i] = X;
    }
    sort(adatok.rbegin(), adatok.rend());
    cout << adatok[K - 1] << "\n";
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 14ms 3516 KiB
3 Elfogadva 2/2 2ms 2128 KiB
4 Elfogadva 2/2 3ms 2520 KiB
5 Elfogadva 2/2 3ms 2472 KiB
6 Elfogadva 2/2 3ms 2452 KiB
7 Elfogadva 2/2 3ms 2812 KiB
8 Elfogadva 4/4 3ms 2848 KiB
9 Elfogadva 4/4 4ms 2872 KiB
10 Elfogadva 4/4 8ms 3648 KiB
11 Elfogadva 4/4 7ms 3856 KiB
12 Elfogadva 4/4 9ms 4308 KiB
13 Elfogadva 4/4 12ms 5056 KiB
14 Elfogadva 4/4 13ms 4748 KiB
15 Elfogadva 4/4 12ms 5268 KiB
16 Elfogadva 4/4 14ms 5292 KiB
17 Elfogadva 4/4 16ms 5524 KiB