AtCoder

ABC274 A問題(Batting Average)を解く

AtCoder_ABC274_A

AtCoder が提供しているABC(AtCoder Beginner Contest)274 のA問題をC++とPythonで解いてみました。ABC274は、2022年10月22日21:00に実施されました。

AtCoder の紹介はこちらに、プログラミングの方針はこちらに記事があります。

A問題 Batting Average(Difficulty : 23)

問題はリンク先をご覧ください。

ABC274 A問題 Batting Average

浮動小数点数の出力について問う問題です。AtCoder Problems による Difficulty は、23 でした。ABC A問題として、標準的な問題です。

解答案

問題を解く方針を書きだします。

  • 整数を2つ読み、割り算の結果を出力する。

難しいのは、割り算の結果を小数点以下3桁(末尾が0の場合も省略しない)まで出力することです。AOJ で提供されている「プログラミング入門」(ITP1)の 4_A(A / B Problem)で小数点以下の桁数を指定する方法を解説しています。よろしければ、そちらもご覧ください。

C++ プログラム例(ABC274A)

iostream でも小数点以下の桁数は指定できます。この場合は、stdio.h(cstdio)の printf を使う方が簡単に出力できます。以下が、解答例です。

#include <bits/stdc++.h>
using namespace std;

int main()
{
	int a, b;
	cin >> a >> b;

	printf("%.3lf\n", (double)b / (double)a);

	return 0;
}

AC(Accepted=正しいプログラム)と判定されました。

Python プログラム例(ABC274A)

Python では、f文字列を使って、小数点以下の桁数を指定できます。

"""AtCoder Beginner Contest 274 A"""
a, b = map(int, input().split())
print(f"{b / a:.3f}")

こちらも「AC」と判定されました。

最後に

小数点以下の桁数も出力方法を知らなければ、時間を取られます。簡単な問題でも数を解くことにより、文法面での穴が少なくなると考えています。

ABC274 について、引き続き、D問題まで紹介します。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA