トップページに戻る    次の競技プログラミングの問題へ    前の競技プログラミングの問題へ

No.128 お年玉(1)

■■■問題■■■

Yasuoは、予算がN円しかないが、親戚の子供M人にお年玉をあげたいと思っている。
お年玉の中の種類は1000円紙幣だけにしたいと思っているが、
平等(すべて同じ金額)でかつ最大の金額をあげたいと思っています。

この時、一人分になる金額を求めてください。

■■■入力■■■

N
M

入力は全て整数で与えられる。
1 <= N <= 10の16乗
1 <= M <= 1万

■■■出力■■■

一人に渡すことになる金額を求めてください。


C#のソース

using System;
using System.Collections.Generic;

class Program
{
    static string InputPattern = "Input1";

    static List<string> GetInputList()
    {
        var WillReturn = new List<string>();

        if (InputPattern == "Input1") {
            WillReturn.Add("10000");
            WillReturn.Add("5");
            //2000
            //予算が10000円あり、5人に配るので1人あたり2000円です
        }
        else if (InputPattern == "Input2") {
            WillReturn.Add("24000");
            WillReturn.Add("9");
            //2000
            //平等であれば、予算をすべて使い切らなくても良いです
        }
        else if (InputPattern == "Input3") {
            WillReturn.Add("1000");
            WillReturn.Add("6");
            //0
            //予算が少ないので、誰にもお年玉をあげられません
        }
        else {
            string wkStr;
            while ((wkStr = Console.ReadLine()) != null) WillReturn.Add(wkStr);
        }
        return WillReturn;
    }

    static void Main()
    {
        List<string> InputList = GetInputList();
        ulong N = ulong.Parse(InputList[0]);
        ulong M = ulong.Parse(InputList[1]);

        ulong Answer = N / (1000 * M) * 1000;
        Console.WriteLine(Answer);
    }
}


解説

予算を、人数の1000倍で割った商に、
1000を掛けた値が解です。