225212026-01-15 10:26:43badamSorozat generáláscpp17Elfogadva 50/5028ms2356 KiB
#include <bits/stdc++.h>

using namespace std;
struct szam
{
    long long ertek, sorszam;
};
bool h(szam a, szam b)
{
    if(a.ertek==b.ertek) return a.sorszam<b.sorszam;
    else return a.ertek<b.ertek;
}
int main()
{
    long long M, curr, A, B, N, K;
    cin >> M >> curr >> A >> B >> N >> K;
    int v[N];
    for(int i=0; i<N; i++)
    {
        long long x=A*curr+B;
        long long  y=pow(10,3*M);
        long long z=pow(10,M);
        x=x%y;
        x=x/z;
        v[i]=x;
        curr=x;
    }
    szam t[N];
    for(int i=0; i<N; i++)
    {
        t[i].ertek=v[i];
        t[i].sorszam=i;
    }
    sort(t,t+N,h);
    long long   min_tavolsag=200000000, curr_tavolsag;
    for(int i=1; i<N; i++)
    {
        if(t[i].ertek==t[i-1].ertek)
        {
            curr_tavolsag=t[i].sorszam-t[i-1].sorszam;
            if(curr_tavolsag<min_tavolsag) min_tavolsag=curr_tavolsag;
        }
    }
    cout << min_tavolsag << endl;
    cout << t[N-K].ertek;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/02ms316 KiB
2Elfogadva0/028ms2352 KiB
3Elfogadva2/22ms500 KiB
4Elfogadva2/23ms316 KiB
5Elfogadva2/22ms316 KiB
6Elfogadva2/22ms408 KiB
7Elfogadva2/23ms372 KiB
8Elfogadva4/43ms316 KiB
9Elfogadva4/46ms788 KiB
10Elfogadva4/413ms1364 KiB
11Elfogadva4/414ms1372 KiB
12Elfogadva4/418ms1764 KiB
13Elfogadva4/424ms2152 KiB
14Elfogadva4/425ms2148 KiB
15Elfogadva4/427ms2356 KiB
16Elfogadva4/428ms2352 KiB
17Elfogadva4/428ms2352 KiB