64002023-11-28 07:42:59AncsaSorozat generáláscpp14Wrong answer 30/5027ms4208 KiB
#include <iostream>
#include <bits/stdc++.h>

using namespace std;

//1 73 11 50 20 10
int main()
{
    int m,x, a,b,n,k;
    cin>>m>>x>>a>>b>>n>>k;
    vector<int> sorozat(n+1);

    sorozat.at(0)=x;
    map<int,int> rend;

    for(int i=1;i<=n;i++)
    {
        int segit=sorozat.at(i-1)*a+b;
        int hossz=0;
        int uj=segit;
        string str=to_string(segit);
        while (str.size()<4*m)
            str="0"+str;
        string ujsegit=str.substr(m,2*m);
        int ujtag=stoi(ujsegit);
        sorozat.at(i)=ujtag;
        rend[ujtag]++;
    }
    int db=0;
    int ism,nagy;
    bool megvan=false, vantobb=false;
    for(pair<int,int> x:rend)
    {
        db+=x.second;
        if(n-db<k && ! megvan)
        {
            nagy=x.first;
            megvan=true;
        }
        if (x.second>1 && !vantobb)
        {
            vantobb=true;
            ism=x.first;
        }
    }
    int hossz=0,index=0;
    while(sorozat.at(index)!=ism)
        index++;
    int kezd=index;
    index++;
    while(sorozat.at(index)!=ism)
        index++;
    hossz=index-kezd;
    cout<<hossz<<endl;
    cout<<nagy<<endl;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base30/50
1Accepted0/03ms1840 KiB
2Wrong answer0/021ms2936 KiB
3Accepted2/23ms2120 KiB
4Accepted2/23ms2376 KiB
5Accepted2/23ms2456 KiB
6Accepted2/23ms2340 KiB
7Accepted2/23ms2356 KiB
8Accepted4/44ms2632 KiB
9Accepted4/44ms2892 KiB
10Accepted4/48ms2928 KiB
11Accepted4/47ms2928 KiB
12Accepted4/410ms3184 KiB
13Wrong answer0/420ms3776 KiB
14Wrong answer0/427ms3992 KiB
15Wrong answer0/424ms3864 KiB
16Wrong answer0/425ms4120 KiB
17Wrong answer0/425ms4208 KiB