34742023-02-28 11:53:37AGergoSorozat generáláscsharpElfogadva 50/5072ms26056 KiB
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace sorozat
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] st = Console.ReadLine().Split();

            double M = int.Parse(st[0]);
            long num = int.Parse(st[1]);
            int szorzo = int.Parse(st[2]);
            int add = int.Parse(st[3]);
            int lepes = int.Parse(st[4]);
            int k = int.Parse(st[5]); // k. legnagyobb elem kell

            int len = lepes + 1; //tavolsag a ket ugyanolyan szam közt

            List<int> szamok = new List<int>();
            int index = -1;

            for (int i = 0; i < lepes; i++)
            {
                num = num * szorzo + add;
                
                num = (num % (int)Math.Pow(10,3*M))/ (int)Math.Pow(10,M);

                if (szamok.Contains((int)num))
                {
                    len = i - szamok.IndexOf((int)num);
                    index = i;
                    break;
                }
                szamok.Add((int)num);
            }
            for (int i = index; i < lepes; i++)
            {
                szamok.Add(szamok[i - len]);
            }
            szamok.Sort();
            szamok.Reverse();

            Console.WriteLine(len);
            
            Console.WriteLine(szamok[k-1]);

        }
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/032ms21208 KiB
2Elfogadva0/067ms23100 KiB
3Elfogadva2/232ms22028 KiB
4Elfogadva2/232ms22352 KiB
5Elfogadva2/232ms22804 KiB
6Elfogadva2/232ms22736 KiB
7Elfogadva2/232ms22544 KiB
8Elfogadva4/434ms23156 KiB
9Elfogadva4/437ms23792 KiB
10Elfogadva4/446ms23924 KiB
11Elfogadva4/445ms24352 KiB
12Elfogadva4/452ms25332 KiB
13Elfogadva4/464ms25380 KiB
14Elfogadva4/465ms25756 KiB
15Elfogadva4/463ms26056 KiB
16Elfogadva4/471ms25936 KiB
17Elfogadva4/472ms25928 KiB