結果

問題 No.373 かけ算と割った余り
ユーザー 紙ぺーぱー
提出日時 2016-06-02 18:37:02
言語 C#
(csc 2.7.0.62620)
結果
AC  
実行時間 32 ms
コード長 809 Byte
コンパイル時間 588 ms
使用メモリ 17,468 KB
最終ジャッジ日時 2018-08-17 15:35:42

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
challenge01.txt AC 31 ms
15,416 KB
sample1.txt AC 31 ms
15,416 KB
sample2.txt AC 31 ms
15,420 KB
test1.txt AC 31 ms
15,412 KB
test2.txt AC 32 ms
17,468 KB
test3.txt AC 30 ms
13,376 KB
test4.txt AC 31 ms
13,388 KB
テストケース一括ダウンロード
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 2.7.0.62620 (e873e693)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #
using System;
using System.Collections.Generic;
using System.Linq;

class prog
{
  static void Main()
  {
    var a=Console.ReadLine().Split().Select(long.Parse).ToArray().ValidateArray(x=>1<=x&&x<=1000000000);
    a.Validate(x=>x.Length==4);
    Console.ReadLine().Validate(x=>x==null);
    var v=a[0];
    v*=a[1];
    v%=a[3];
    v*=a[2];
    v%=a[3];
    Console.WriteLine(v);
  }
}

static public class Validator
{
    static public T Validate<T>(this T input, Func<T, bool> f)
    {
        if (!f(input))
            throw new Exception("invalid input");
        return input;
    }
    static public T[] ValidateArray<T>(this T[] input, Func<T, bool> f)
    {
        foreach (var x in input)
            if (!f(x))
                throw new Exception("invalid input");
        return input;
    }
}
0