[Python] 45秒で東大数学(2019年 前期第1問)を解いてみた
Pythonを使って45秒で東大の入試問題を1問解けるのか検証してみました。
Sympyの integrate(f, (x, a, b))
を用いれば
関数fをxについてaからbまで積分計算することができます。
では早速問題を見てみましょう。
問題:
2019年 東京大学 前期日程 数学(理科) 第1問
読売新聞オンラインより問題および解答部を引用
手計算での解法
まずは上記の式を展開して、
展開した第1項目から4項目までの定積分をそれぞれ計算して最後に
足し合わせます。
Sympyで解いてみる
まずはSympyをImportして変数xを定義
import sympy as sym
x = sym.Symbol('x')
間違えないようにひたすら式を打ち込む
念の為、表示して確認。
f = (x**2+x/sym.sqrt(1+x**2))*(1+x/((1+x**2)*sym.sqrt(1+x**2)))
print(f)
出力:(x*2 + x/sqrt(x2 + 1))(x/(x*2 + 1)*(3/2) + 1)
打ち間違えがなさそうなら
いよいよ0から1まで積分
F = sym.integrate(f, (x, 0, 1))
print(F)
出力:-35/12 + pi/8 + 5*sqrt(2)/2
解けました。
解答例と比べても合っているようです。
結論
高速でタイプしてギリいける感じです。
ちなみに1回目は式に目が慣れていなかったので失敗。2分以上かかりました。
よって45秒以内に解を出すにはいかに早く打てるかが鍵となります。
特に途中でタイプミスがあると致命的。
リズムに乗るために本家の45秒を聴きながらやってみるのも良いでしょう。
Author And Source
この問題について([Python] 45秒で東大数学(2019年 前期第1問)を解いてみた), 我々は、より多くの情報をここで見つけました https://qiita.com/taro-ari/items/38d23fcd60741616cee3著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .