Ejemplo n.º 1
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            string templeValue = testCaseResponse.input.Trim();

            List <Style> styles = new List <Style>
            {
                new Style {
                    Open = '{', Close = '}'
                },
                new Style {
                    Open = '(', Close = ')'
                },
                new Style {
                    Open = '[', Close = ']'
                }
            };

            Temple temple = new Temple(templeValue, styles);

            bool isTampleOk = temple.IsTempleOk();

            var content = isTampleOk ? T : F;

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content.ToString(), Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 2
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            string[] lines = testCaseResponse.input.Split('\n').ToArray();
            string   input = lines[0];

            Console.WriteLine(input + "- " + input.Length);
            //if (input.Length > 8)
            //{
            //    throw new Exception();
            //}
            long index = Convert.ToInt64(lines[1]);

            //var permutations = GetPermutations(index, input.ToCharArray().OrderBy(x => x).ToArray()).Select(x => string.Join("", x)).OrderBy(x => x).ToList();

            var permutation = Encoding.ASCII.GetBytes(input).OrderBy(x => x).Select(x => (int)x).ToArray();

            for (long i = 0; i < index; i++)
            {
                permutation = NextPermutation(permutation);
            }

            var content = string.Join("", permutation.Select(x => (char)x).ToArray());

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content.ToString(), Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 3
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            if (testCaseResponse.input == null)
            {
                return;
            }

            int finNumber = Convert.ToInt32(testCaseResponse.input);

            long sum = 0;

            for (int i = finNumber; i > 0; i--)
            {
                sum += Fibonacci(i * 4 - 1);
            }

            string content = sum.ToString();

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content.ToString(), Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 4
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            string[] lines = testCaseResponse.input.Split('\n').ToArray();

            int n = Convert.ToInt32(lines[0]);

            Matrix = new int[n, n];

            for (int i = 1; i <= n; i++)
            {
                int[] line = lines[i].Split(' ').Select(int.Parse).ToArray();
                for (int j = 0; j < line.Length; j++)
                {
                    Matrix[i, j] = line[j];
                }
            }

            MatrixResult result = new MatrixResult();

            for (int q = n; q >= 1; q--)
            {
                for (int z = n; z >= 1; z--)
                {
                    for (int i = 0; i < n - q; i++)
                    {
                        for (int j = 0; j < n - z; j++)
                        {
                            if (q * z >= result.P)
                            {
                                MatrixResult current = CalculateSum(i, j, q, z);

                                if (current.Sum > result.Sum)
                                {
                                    result = current;
                                }
                            }
                            else
                            {
                                break;
                            }
                        }
                    }
                }
            }

            var content = result.Sum.ToString();

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content, Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 5
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            //int input = Convert.ToInt32(testCaseResponse.input);
            //try
            //{
            //    input ;
            //}
            //catch (Exception e)
            //{
            //    //if (testCaseResponse.submission_id != null)
            //    //{
            //    //    response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", "-1", Authorization);
            //    //    SubmitResponse submitResponse2 = JsonConvert.DeserializeObject<SubmitResponse>(response);
            //    //    Console.WriteLine($"{submitResponse2.status} - {submitResponse2.points_won}");
            //    //}
            //}

            //int[] result = {};

            //switch (input)
            //{
            //    case 0:
            //        result = new[] {0, 1, 2, 3};
            //        break;
            //    case 1:
            //        result = new[] { 5, 6, 7, 8, 9 };
            //        break;
            //    case 2:
            //        result = new[] { 10, 11, 12, 13, 14 };
            //        break;
            //    case 3:
            //        result = new[] { 15, 16, 17, 18, 19 };
            //        break;
            //    case 4:
            //        result = new[] { 20 };
            //        break;
            //}

            var content = "-1";

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content, Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 6
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            string[] lines = testCaseResponse.input.Split('\n').ToArray();

            int n, m;
            int aCost, bCost;
            int aCounter = 0, bCounter = 0;

            n     = Convert.ToInt32(lines[0].Split(' ').ToArray()[0]);
            m     = Convert.ToInt32(lines[0].Split(' ').ToArray()[1]);
            aCost = Convert.ToInt32(lines[1].Split(' ').ToArray()[0]);
            bCost = Convert.ToInt32(lines[1].Split(' ').ToArray()[1]);

            while (n > m)
            {
                n /= 2;
                bCounter++;
                if (n / 2 < m)
                {
                    break;
                }
            }
            while (n > m)
            {
                n -= 1;
                aCounter++;
            }
            int valueA = aCost * aCounter;
            int valueB = bCost * bCounter;

            int value = valueA + valueB;

            var content = value.ToString();

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content, Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 7
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            Dictionary <char, Code> dictionary = new Dictionary <char, Code>();

            string[] lines = testCaseResponse.input.Split('\n').ToArray();

            string formula = lines[0];

            for (int i = 1; i < lines.Length; i++)
            {
                string[] lineElements = lines[i].Split(' ').ToArray();
                dictionary.Add(lineElements[0][0], new Code
                {
                    Bits = lineElements[1].ToCharArray().Select(x => int.Parse(x.ToString())).ToArray()
                });
            }

            Code first1  = dictionary[formula[0]];
            Code second1 = dictionary[formula[2]];
            char op1     = formula[1];
            var  result  = CalculateResult(first1, second1, op1);

            if (formula.Length > 3)
            {
                for (int i = 3; i < formula.Length - 1; i = i + 2)
                {
                    Code second = dictionary[formula[i + 1]];
                    char op     = formula[i];
                    result = CalculateResult(result, second, op);
                }
            }

            string content = string.Join("", result.Bits);

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content, Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }
Ejemplo n.º 8
0
        private static void ProcessJob()
        {
            string           response         = Manager.SendGETRequest(UriBase, Authorization);
            TestCaseResponse testCaseResponse = JsonConvert.DeserializeObject <TestCaseResponse>(response);

            //string input = "4\n173.35\n155.53\n173.35\n150.00";

            string[] lines = testCaseResponse.input.Split('\n').ToArray();
            int      n     = Convert.ToInt32(lines[0]);

            if (n > 60000)
            {
                throw new Exception();
            }

            int max = 15001;

            Heights = new int[max];

            long sum = 0;

            for (int i = 1; i < n + 1; i++)
            {
                int height = (int)Convert.ToDecimal(lines[i]) - 10000;

                Heights[height]++;

                sum += Heights.Skip(height + 1).Sum();
            }

            var content = sum;

            response = Manager.SendPOSTRequest($"{UriBase}/{testCaseResponse.submission_id}", content.ToString(), Authorization);
            SubmitResponse submitResponse = JsonConvert.DeserializeObject <SubmitResponse>(response);

            Console.WriteLine($"{submitResponse.status} - {submitResponse.points_won}");
        }