結果

問題 No.816 Beautiful tuples
ユーザー keymoonkeymoon
提出日時 2019-04-19 23:04:12
言語 C#(csc)
(csc 3.9.0)
結果
WA  
実行時間 -
コード長 1,203 bytes
コンパイル時間 3,410 ms
コンパイル使用メモリ 110,264 KB
実行使用メモリ 27,256 KB
最終ジャッジ日時 2024-09-23 03:16:29
合計ジャッジ時間 1,979 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 WA -
testcase_01 AC 29 ms
27,256 KB
testcase_02 AC 28 ms
25,112 KB
testcase_03 WA -
testcase_04 AC 28 ms
22,960 KB
testcase_05 AC 29 ms
27,156 KB
testcase_06 AC 29 ms
25,212 KB
testcase_07 AC 30 ms
27,032 KB
testcase_08 AC 29 ms
25,116 KB
testcase_09 AC 30 ms
27,128 KB
testcase_10 WA -
testcase_11 WA -
testcase_12 AC 29 ms
24,984 KB
testcase_13 AC 30 ms
25,372 KB
testcase_14 AC 29 ms
25,112 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
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.IO;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Numerics;
using System.Threading.Tasks;
using System.Text.RegularExpressions;
using static System.Math;
using Debug = System.Diagnostics.Debug;
using MethodImplOptions = System.Runtime.CompilerServices.MethodImplOptions;
using MethodImplAttribute = System.Runtime.CompilerServices.MethodImplAttribute;


static class P
{
    static void Main()
    {
        var ab = Console.ReadLine().Split().Select(int.Parse).ToArray();
        var a = ab[0];
        var b = ab[1];
        //a < bとする
        //a==bの場合 c==aが成立
        //a以下の場合
        var max = (int)Ceiling(Sqrt(a + b));
        long cand = -1;
        for (int i = 1; i <= max; i++)
        {
            if ((a + b) % i != 0) continue;
            var op = (a + b) / i;
            if ((a + i) % b == 0 && (b + i) % a == 0)
            {
                Console.WriteLine(i);
                return;
            }
            if ((a + op) % b == 0 && (b + op) % a == 0)
            {
                cand = op;
            }
        }
        Console.WriteLine(cand);
    }
}
0