結果
問題 | No.8044 April Sum of Odd |
ユーザー | AreTrash |
提出日時 | 2019-04-01 22:48:27 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 71 ms / 2,000 ms |
コード長 | 2,687 bytes |
コンパイル時間 | 3,514 ms |
コンパイル使用メモリ | 113,988 KB |
実行使用メモリ | 28,672 KB |
最終ジャッジ日時 | 2024-11-27 03:46:07 |
合計ジャッジ時間 | 4,499 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 10 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.IO; using System.Collections.Generic; using System.Linq; namespace No3044 { public partial class Program { void Solve(StreamScanner ss, StreamWriter sw) { //--------------------------------- var N = ss.Next(int.Parse); var M = ss.Next(int.Parse); var A = ss.Next(long.Parse, N); var cnt = 0L; var sum = 0L; var ans = new List<long>(); foreach (var a in A.Concat(new long[] {0})) { if (a % 2 == 0) { if (cnt >= M) ans.Add(sum); cnt = 0; sum = 0; } else { cnt++; sum += a; } } sw.WriteLine(string.Join("\n", ans)); //--------------------------------- } } public class StreamScanner { static readonly char[] Separator = { ' ' }; readonly StreamReader streamReader; string[] line = new string[0]; int index = 0; public StreamScanner(Stream stream) { this.streamReader = new StreamReader(stream); } public string Next() { return Next(s => s); } public string[] Next(int x) { return Next(s => s, x); } public string[][] Next(int x, int y) { return Next(s => s, x, y); } public T Next<T>(Func<string, T> parser) { if (index < line.Length) return parser(line[index++]); index = 0; line = streamReader.ReadLine()?.Split(Separator, StringSplitOptions.RemoveEmptyEntries); return Next(parser); } public T[] Next<T>(Func<string, T> parser, int x) { var ret = new T[x]; for (var i = 0; i < x; ++i) ret[i] = Next(parser); return ret; } public T[][] Next<T>(Func<string, T> parser, int x, int y) { var ret = new T[y][]; for (var i = 0; i < y; ++i) ret[i] = Next(parser, x); return ret; } } public partial class Program { static void Main() { Excute(Console.OpenStandardInput(), Console.OpenStandardOutput()); } public static void Excute(Stream input, Stream output) { var ss = new StreamScanner(input); var sw = new StreamWriter(output); new Program().Solve(ss, sw); sw.Flush(); } } }