Submission #7963680


Source Code Expand

using System;
using System.Collections.Generic;
using System.Linq;
using BitArray = System.Collections.BitArray;
using BigInteger = System.Numerics.BigInteger;
using TextReader = System.IO.TextReader;
using System.Text;

namespace AtCoderProject
{
    public class Program
    {
        public object Calc()
        {
            var K = consoleReader.Long;
            var res = Enumerable.Range(0, 50).Select(l => l).ToArray();
            var N = K % 50;
            for (int i = 0; i < N; i++)
            {
                var minIndex = 0;
                var min = res[minIndex];
                for (int j = 1; j < res.Length; j++)
                {
                    if (min > res[j])
                    {
                        min = res[j];
                        minIndex = j;
                    }
                }
                res[minIndex] += 50;
                for (int j = 0; j < res.Length; j++)
                    if (j != minIndex)
                        res[j]--;
            }

            Console.WriteLine(50);
            return string.Join(" ", res.Select(l => l + K / 50));
        }

        #region いつもの
#pragma warning disable
        private ConsoleReader consoleReader;
        public Program(ConsoleReader consoleReader) { this.consoleReader = consoleReader; }
        static void Main() => Console.WriteLine(new Program(new ConsoleReader(Console.In)).Calc()); static string AllLines<T>(IEnumerable<T> source) => string.Join("\n", source);
    }
    static class Ext
    {
        public static Dictionary<TKey, int> GroupCount<TSource, TKey>(this IEnumerable<TSource> source, Func<TSource, TKey> keySelector) => source.GroupBy(keySelector).ToDictionary(g => g.Key, g => g.Count());
        public static Dictionary<TKey, int> GroupCount<TKey>(this IEnumerable<TKey> source) => source.GroupCount(i => i);
    }
    public class ConsoleReader { private string[] ReadLineSplit() => textReader.ReadLine().Split(Array.Empty<char>(), StringSplitOptions.RemoveEmptyEntries); private string[] line = Array.Empty<string>(); private int linePosition; private TextReader textReader; public ConsoleReader(TextReader tr) { textReader = tr; } public int Int => int.Parse(String); public long Long => long.Parse(String); public double Double => double.Parse(String); public string String { get { if (linePosition >= line.Length) { linePosition = 0; line = ReadLineSplit(); } return line[linePosition++]; } } public class SplitLine { private string[] splited; public SplitLine(ConsoleReader cr) { splited = cr.ReadLineSplit(); cr.line = Array.Empty<string>(); } public int[] Int => String.Select(x => int.Parse(x)).ToArray(); public int[] Int0 => String.Select(x => int.Parse(x) - 1).ToArray(); public long[] Long => String.Select(x => long.Parse(x)).ToArray(); public double[] Double => String.Select(x => double.Parse(x)).ToArray(); public string[] String => splited; } public SplitLine Split => new SplitLine(this); public class RepeatReader : IEnumerable<ConsoleReader> { ConsoleReader cr; int count; public RepeatReader(ConsoleReader cr, int count) { this.cr = cr; this.count = count; } public IEnumerator<ConsoleReader> GetEnumerator() => Enumerable.Repeat(cr, count).GetEnumerator(); System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() => GetEnumerator(); public IEnumerable<string> String => this.Select(cr => cr.String); public IEnumerable<int> Int => this.Select(cr => cr.Int); public IEnumerable<int> Int0 => this.Select(cr => cr.Int - 1); public IEnumerable<long> Long => this.Select(cr => cr.Long); public IEnumerable<double> Double => this.Select(cr => cr.Double); } public RepeatReader Repeat(int count) => new RepeatReader(this, count); }
    #endregion
}

Submission Info

Submission Time
Task D - Decrease (Contestant ver.)
User kzrnm
Language C# (Mono 4.6.2.0)
Score 600
Code Size 3789 Byte
Status AC
Exec Time 26 ms
Memory 13396 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 5
AC × 25
Set Name Test Cases
Sample example0, example1, example2, example3, example4
All corner0, corner1, corner2, corner3, corner4, corner5, corner6, corner7, corner8, corner9, example0, example1, example2, example3, example4, rand0, rand1, rand2, rand3, rand4, rand5, rand6, rand7, rand8, rand9
Case Name Status Exec Time Memory
corner0 AC 25 ms 11348 KB
corner1 AC 25 ms 11348 KB
corner2 AC 25 ms 11348 KB
corner3 AC 26 ms 11348 KB
corner4 AC 25 ms 11348 KB
corner5 AC 24 ms 9300 KB
corner6 AC 25 ms 11348 KB
corner7 AC 25 ms 9300 KB
corner8 AC 25 ms 13396 KB
corner9 AC 25 ms 11348 KB
example0 AC 24 ms 9300 KB
example1 AC 24 ms 9300 KB
example2 AC 25 ms 11348 KB
example3 AC 25 ms 13396 KB
example4 AC 25 ms 9300 KB
rand0 AC 25 ms 11348 KB
rand1 AC 24 ms 9300 KB
rand2 AC 24 ms 9300 KB
rand3 AC 24 ms 11348 KB
rand4 AC 24 ms 9300 KB
rand5 AC 24 ms 11348 KB
rand6 AC 25 ms 13396 KB
rand7 AC 24 ms 9300 KB
rand8 AC 26 ms 11348 KB
rand9 AC 25 ms 11348 KB