80572024-01-12 11:38:51BotiSorozat generáláscpp17Hibás válasz 29/507ms3392 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int m, x, a, b, n, k;
    cin >> m >> x >> a >> b >> n >> k;
    vector<pair<int, int>> s (0);
    bool loop = true;
    int l = k;
    int l1 = k;
    while (loop)
    {
        x = x*a + b;
        x = floor(x/pow(10, m));
        x = x % int(pow(10, 2*m));
        for (int i = 0; i < s.size(); i++)
        {
            if (s[i].first == x)
            {
                loop = false;
                l1 = i;
                l = s.size() - l1;
            }
        }
        if (loop)
            s.push_back(make_pair(x, 1));
    }
    for (int i = l1; i < s.size(); i++)
    {
        s[i].second = floor((n - l1)/l);
        if (((n - l1 -1) % l) +2 >= i)
            s[i].second++;
    }
    /*for (int i = 0; i < s.size(); i++)
    {
        cout << s[i].first << "   " << s[i].second << endl;
    }*/
    sort(s.begin(), s.end());
    cout << l << endl;
    int temp = 0;
    for (int i = s.size() -1; i >= 0; i--)
    {
        temp += s[i].second;
        if (temp >= k)
        {
            temp = s[i].first;
            i = -1;
        }
    }
    cout << temp;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base29/50
1Elfogadva0/03ms1812 KiB
2Hibás válasz0/06ms2184 KiB
3Részben helyes1/23ms2120 KiB
4Elfogadva2/23ms2344 KiB
5Elfogadva2/23ms2464 KiB
6Elfogadva2/23ms2708 KiB
7Elfogadva2/23ms2828 KiB
8Elfogadva4/43ms2968 KiB
9Elfogadva4/43ms3024 KiB
10Elfogadva4/43ms3028 KiB
11Elfogadva4/43ms2916 KiB
12Elfogadva4/43ms3112 KiB
13Hibás válasz0/43ms3212 KiB
14Hibás válasz0/43ms3192 KiB
15Hibás válasz0/47ms3312 KiB
16Hibás válasz0/44ms3272 KiB
17Hibás válasz0/43ms3392 KiB