結果

問題 No.375 立方体のN等分 (1)
ユーザー 紙ぺーぱー
提出日時 2016-06-02 20:32:52
言語 C#(csc)
(csc 3.9.0)
結果
WA  
実行時間 -
コード長 977 bytes
コンパイル時間 973 ms
コンパイル使用メモリ 105,856 KB
実行使用メモリ 17,664 KB
最終ジャッジ日時 2024-10-08 05:57:03
合計ジャッジ時間 12,298 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 27 WA * 5
権限があれば一括ダウンロードができます
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #

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

class prog
{
  static void Main()
  {
    var n=long.Parse(Console.ReadLine()).Validate(x=>1<x&&x<100000000000);
    var min=n-1;
    for(int i=0;i<=1000000;i++){
      if(n%(i+1)!=0)continue;
      var j=(n/(i+1))-1;
      min=Math.Min(min,i+j);
    }
    for(int i=0;i<=5000;i++){
      for(int j=0;j<=5000;j++){
        var x=(i+1)*(j+1);
        if(n%x!=0)continue;
        var k=(n/x)-1;
        min=Math.Min(min,i+j+k);
      }
    }
    Console.WriteLine("{0} {1}",min,n-1);
  }
}

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