結果

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

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
challenge01.txt AC 30 ms
15,596 KB
sample1.txt AC 32 ms
15,584 KB
sample2.txt AC 32 ms
13,552 KB
test1.txt AC 32 ms
15,600 KB
test2.txt AC 32 ms
15,592 KB
test3.txt AC 32 ms
15,596 KB
test4.txt AC 32 ms
17,636 KB
テストケース一括ダウンロード
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 2.8.2.62916 (2ad4aabc)
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