結果

問題 No.378 名声値を稼ごう
ユーザー mban
提出日時 2016-11-04 12:25:50
言語 C#
(csc 3.100.19.26603)
結果
AC  
実行時間 28 ms
コード長 867 Byte
コンパイル時間 1,057 ms
使用メモリ 9,744 KB
最終ジャッジ日時 2019-10-11 19:30:50

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
input1 AC 27 ms
9,720 KB
input2 AC 27 ms
9,740 KB
input3 AC 27 ms
9,744 KB
input4 AC 28 ms
9,736 KB
sample AC 28 ms
9,720 KB
テストケース一括ダウンロード
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.100.19.26603 (9d80dea7)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

class Magatro
{
    static void Main()
    {
        long N = long.Parse(Console.ReadLine());
        Console.WriteLine(spe(N) - norm(N));
    }
   static long norm(long n)
    {
        if (n == 0)
        {
            return 0;
        }
        return norm(n / 2) + n;
    }
    static long spe(long n)
    {
        List<long> L = new List<long>();
        L.Add(n);
        while (n != 1)
        {
            n /= 2;
            L.Add(n);
        }
        long max = 0;
        for(int i = 1; i <= L.Count; i++)
        {
            long c = 0;
            for(int j = 0; j < i; j++)
            {
                c += L[j];
            }
            c += L[i - 1];
            max = Math.Max(c, max);
        }
        return max;
    }

}
0