Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace CSConsole
- {
- class Program
- {
- static int[] ReadValue_array = new int[]{
- 11,
- 12,
- 45,
- 5,
- 3,
- 17,
- 23,
- 21,
- 20,
- 19,
- 18,
- 17};
- static int ReadValue_interator = 0;
- public static int ReadValue()
- {
- return ReadValue_array[ReadValue_interator++];
- }
- static void Main(string[] args)
- {
- var _NULL = int.MaxValue;
- var result = _NULL;
- var N = ReadValue();
- var min_0 = _NULL; //2
- var min_1 = _NULL; //1
- var interval_LENGTH = 7;
- var interval = new int[interval_LENGTH];
- var interval_I = 0; /// NEW NEW NEW NEW NEW ///
- for (var i = 0 ; i < N ; i++)
- {
- var read = ReadValue();
- //записываем последнее занчение
- interval[ (interval_I++) % interval_LENGTH ] = read; /// NEW NEW NEW NEW NEW ///
- //было 6 кргов или не было
- if (interval_I < interval_LENGTH) continue; /// NEW NEW NEW NEW NEW ///
- //запоминаем минимумы используюя первый элемента массива 'интервал'
- var L_V = interval[ (interval_I + 1) % interval_LENGTH ]; /// NEW NEW NEW NEW NEW ///
- if (L_V % 2 == 0 && L_V < min_0) min_0 = L_V;
- if (L_V % 2 == 1 && L_V < min_1) min_1 = L_V;
- var R_V0 = read * min_0;
- if (min_0 != _NULL && R_V0 % 2 == 0 && R_V0 < result) result = R_V0;
- var R_V1 = read * min_1;
- if (min_1 != _NULL && R_V1 % 2 == 0 && R_V1 < result) result = R_V1;
- }
- Console.WriteLine( result == int.MaxValue ? -1 : result );
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement