8141 2024. 01. 12 14:27:23 Boti010 Egykorúak (75 pont) csharp Elfogadva 75/75 56ms 31132 KiB
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace eletkor
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            int[] P = Console.ReadLine().Split().Select(int.Parse).ToArray();
            int[] TE = new int[n];
            int[] TH = new int[n];
            int[] TN = new int[n];
            int[] tval = new int[3];
            int Pn = 0;
            int[] OY = { 1950, 1, 1 };
            int[] h = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
            int sz = 0;
            int peti = 0;
            int db = 0;
            for (int i = 0; i < n; i++)
            {
                tval = Console.ReadLine().Split().Select(int.Parse).ToArray();
                TE[i] = tval[0];
                TH[i] = tval[1];
                TN[i] = tval[2];
            }
            Pn = (P[0] - 1950) * 365;
            for (int i = 1950; i < P[0]; i++)
            {
                if (i % 4 ==0)
                {
                    sz++;
                }
            }
            Pn += sz;
            for (int i = 0; i < P[1]; i++)
            {
                Pn += h[i];
            }
            if (P[0] % 4 == 0 && P[1] > 2)
            {
                Pn++;
            }
            Pn += P[2];
            peti = Pn;
            for (int j = 0; j < n; j++)
            {
                Pn = 0;
                P[0] = TE[j];
                P[1] = TH[j];
                P[2] = TN[j];
                Pn = (P[0] - 1950) * 365;
                sz = 0;
                for (int i = 1950; i < P[0]; i++)
                {
                    if (i % 4 == 0)
                    {
                        sz++;
                    }
                }
                Pn += sz;
                for (int i = 0; i < P[1]; i++)
                {
                    Pn += h[i];
                }
                if (P[0] % 4 == 0 && P[1] > 2)
                {
                    Pn++;
                }
                Pn += P[2];
                if (Math.Abs(Pn - peti) <= 365)
                {
                    db++;
                }
                //Console.WriteLine(Pn + " " + peti);
            }
            Console.WriteLine(db);
            Console.ReadKey();
        }
    }
}
 /*for (int i = 0; i < n; i++)
            {
                tval[0] = TE[i];
                tval[1] = TH[i];
                tval[2] = TN[i];
                if (tval[0] % 4 == 0 && tval[1] >= 2)
                {
                    if (tval[2] == 29 || tval[1] > 2)
                    {
                        tval[2]++;
                    }
                    
                }
            }˛*/
Részfeladat Összpont Teszt Verdikt Idő Memória
base 75/75
1 Elfogadva 0/0 32ms 22428 KiB
2 Elfogadva 0/0 56ms 28500 KiB
3 Elfogadva 5/5 30ms 23132 KiB
4 Elfogadva 5/5 32ms 23532 KiB
5 Elfogadva 5/5 30ms 23720 KiB
6 Elfogadva 5/5 32ms 24304 KiB
7 Elfogadva 5/5 30ms 24128 KiB
8 Elfogadva 5/5 32ms 24576 KiB
9 Elfogadva 5/5 32ms 24568 KiB
10 Elfogadva 5/5 35ms 25724 KiB
11 Elfogadva 5/5 35ms 26168 KiB
12 Elfogadva 5/5 39ms 26920 KiB
13 Elfogadva 5/5 41ms 27168 KiB
14 Elfogadva 5/5 43ms 28104 KiB
15 Elfogadva 5/5 46ms 29464 KiB
16 Elfogadva 5/5 48ms 29972 KiB
17 Elfogadva 5/5 54ms 31132 KiB