Submission #2740367


Source Code Expand

using System;
using System.Collections.Generic;
using System.Linq;

public static class Test
{

    public static IEnumerable<S> Scan<T, S>(this IEnumerable<T> ie, S init, Func<S, T, S> predicate)
    {
        var sum = init;
        foreach(var x in ie)
        {
            yield return sum = predicate(sum, x);
        }
    }
    
    public static IEnumerable<T> StartWith<T>(this IEnumerable<T> ie, T init)
    {
        yield return init;
        foreach(var x in ie)
            yield return x;
    }
    
    public static void Main()
    {
        int.Parse(Console.ReadLine());
        IEnumerable<char> directions = Console.ReadLine();
        
        var cost0 = new {
                cost = directions.Skip(1).Count(x => x == 'E'),
                prev = directions.First()
            };
        
        var costs = directions
            .Skip(1)
            .Scan(
                cost0,
                (s, x) => new {
                    cost = (s.cost + (s.prev == 'W' ? 1 : 0) - (x == 'E' ? 1 : 0)),
                    prev = x
                })
            .StartWith(cost0)
            .Select(x => x.cost);
        
        Console.WriteLine(costs.Min());
    }
}

Submission Info

Submission Time
Task C - Attention
User tetsurom
Language C# (Mono 4.6.2.0)
Score 300
Code Size 1241 Byte
Status AC
Exec Time 65 ms
Memory 18524 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 26
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt
Case Name Status Exec Time Memory
sample_01.txt AC 26 ms 11348 KB
sample_02.txt AC 26 ms 11348 KB
sample_03.txt AC 26 ms 11348 KB
subtask_1_01.txt AC 61 ms 16224 KB
subtask_1_02.txt AC 33 ms 9340 KB
subtask_1_03.txt AC 51 ms 13920 KB
subtask_1_04.txt AC 49 ms 13920 KB
subtask_1_05.txt AC 38 ms 13536 KB
subtask_1_06.txt AC 63 ms 14432 KB
subtask_1_07.txt AC 65 ms 14428 KB
subtask_1_08.txt AC 61 ms 14304 KB
subtask_1_09.txt AC 53 ms 14048 KB
subtask_1_10.txt AC 64 ms 14432 KB
subtask_1_11.txt AC 65 ms 14432 KB
subtask_1_12.txt AC 64 ms 14428 KB
subtask_1_13.txt AC 62 ms 16476 KB
subtask_1_14.txt AC 63 ms 16480 KB
subtask_1_15.txt AC 63 ms 14432 KB
subtask_1_16.txt AC 65 ms 14428 KB
subtask_1_17.txt AC 64 ms 14432 KB
subtask_1_18.txt AC 65 ms 14432 KB
subtask_1_19.txt AC 63 ms 16480 KB
subtask_1_20.txt AC 63 ms 18524 KB