1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <iostream>
int main()
{
    int k,n;
    
    std::cin>>k;
    std::cin>>n;
   
  

	int spotkania[500000][500000];  
    int liczba_spotkan[500000]; 
 
    for (int i=0;i<500000;i++)
    {
         for (int j=0;j<500000;j++)
    	{
               spotkania[i][j]=-1;;
    	}
    }
    
    for (int i=0;i<k-1;i++)
    {
	     std::cin>>liczba_spotkan[i];
        for (int j=0;j<liczba_spotkan[i];j++)
    	{
               std::cin>>spotkania[i][j];
    	}
    }    



    int min=0;
    int index;
    int local_min=0;
    if (k==1)
    {
        min=n;
    }
    
    for (int i=k-1;i>=0;i--)
    {

        index=liczba_spotkan[i];

        if (min<index)
        {
            min=index;

        }
        local_min=0;
        for (int j=0;j<index;j++)
        {
            
            if (spotkania[i][j]==0)
            {
                local_min++;

            }
            else if (spotkania[i][j]>0)
            {
                
                local_min=local_min+(index*spotkania[i+1][j]);

            }
            if (local_min>min)
            {
                min=local_min;
            }
        }

    }

    std::cout<<min;
    return 0;
}