Submission #2213522


Source Code Expand

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;

using static System.Console;
using static AtCoder.Util;
using static AtCoder.Cin;
using static System.Linq.Enumerable;

// playground
/*
ch@ku@ai
choku@@i

*/


namespace AtCoder {
    class Program {

        static void Main() {
            var lines = new List<string>();
            4.Times(() => lines.Add(ReadLine()));
            lines.Reverse();
            foreach (var l in lines) {
                l.Reverse();
                WriteLine(l);
            }
        }
    }
}

namespace AtCoder {
    static class Util {
        public static T debug<T>(this T value) {
            Console.Error.WriteLine($"debug:{value}");
            return value;
        }

        public static long ToLong(this String s) => long.Parse(s);
        public static long ToLong(this char c) => c - '0';
        public static int ToInt(this String s) => int.Parse(s);
        public static int ToInt(this char c) => c - '0';
        public static void Times(this int n, Action action) {
            for (int i = 0; i < n; i++) action();
        }
        public static void Times(this long n, Action action) {
            for (long i = 0; i < n; i++) action();
        }
        public static void Call<T>(this T t, Action<T> action) => action(t);
        public static bool In<T>(this T t, IEnumerable<T> range) =>
            range.Contains(t);
        public static void WriteLine<T>(this T t) => Console.WriteLine(t);
        public static T Call<S, T>(this S s, Func<S, T> func) => func(s);
        public static void Each<T>(this IEnumerable<T> e, Action<T> action) {
            foreach (var v in e) action(v);
        }

        public static VectorInt2 ReadVectorInt2() => 
            new VectorInt2(ReadInt(), ReadInt());

        public static string ReplaceX(this string input, string pattern, string replace) =>
            Regex.Replace(input, pattern, replace);
    }

    static class Cin {
        private static Queue<string> tokens;
        static Cin () {
            string line;
            tokens = new Queue<string> ();
            while ((line = Console.ReadLine ()) != null) {
                foreach (var token in line.Split (' ')) {
                    tokens.Enqueue (token);
                }
            }
        }

        static public int ReadInt() => int.Parse(tokens.Dequeue());
        static public IEnumerable<int> ReadInt(long n) {
            for (int i = 0; i < n; i++) yield return ReadInt();
        }
        static public long ReadLong() => long.Parse(tokens.Dequeue());
        static public IEnumerable<long> ReadLong(long n) {
            for (int i = 0; i < n; i++) yield return ReadLong();
        }
        static public string ReadString() => tokens.Dequeue();
    }

    struct VectorInt2 {
        public int X { get; set; }
        public int Y { get; set; }

        public VectorInt2(int x, int y) {
            X = x; Y = y;
        }

        static public VectorInt2 operator+ (VectorInt2 v1, VectorInt2 v2) =>
            new VectorInt2(v1.X + v2.X, v1.Y + v2.Y);
        static public VectorInt2 operator- (VectorInt2 v1, VectorInt2 v2) =>
            new VectorInt2(v1.X - v2.X, v1.Y - v2.Y);
        static public VectorInt2 operator* (VectorInt2 v1, VectorInt2 v2) =>
            new VectorInt2(v1.X * v2.X, v1.Y * v2.Y);
        static public VectorInt2 operator* (VectorInt2 v1, int i) =>
            new VectorInt2(v1.X * i, v1.Y * i);
        static public VectorInt2 operator* (int i, VectorInt2 v2) =>
            new VectorInt2(i * v2.X, i * v2.Y);
        static public VectorInt2 operator/ (VectorInt2 v1, int i) =>
            new VectorInt2(v1.X / i, v1.Y / i);
    }
}

Submission Info

Submission Time
Task B - 回転
User yuchiki
Language C# (Mono 4.6.2.0)
Score 0
Code Size 3858 Byte
Status CE

Compile Error

./Main.cs(27,19): error CS0121: The call is ambiguous between the following methods or properties: `System.Linq.Enumerable.Reverse<char>(this System.Collections.Generic.IEnumerable<char>)' and `System.Linq.Enumerable.Reverse<char>(this System.Collections.Generic.IEnumerable<char>)'
/usr/lib/mono/4.5/System.Core.dll (Location of the symbol related to previous error)
./Main.cs(53,19): error CS0121: The call is ambiguous between the following methods or properties: `System.Linq.Enumerable.Contains<T>(this System.Collections.Generic.IEnumerable<T>, T)' and `System.Linq.Enumerable.Contains<T>(this System.Collections.Generic.IEnumerable<T>, T)'
/usr/lib/mono/4.5/System.Core.dll (Location of the symbol related to previous error)