1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 二重ループメニュー(言語選択)
  4. 問題一覧 Python3編
  5. 格子点

二重ループメニューのサムネイル
格子点 (paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

x + y < 100 かつ (x ^ 3) + (y ^ 3) < 100000 が成り立つような正の整数 x , y について x × y の最大値を求めてください。

・ ヒント
2 つの式を連立不等式として解きたくなりますが、x + y < 100 に注目すると、(x , y) のとりうる値は (1,1) , (1,2) , (1,98) , (2,1)... (98,1) のいずれかであり、これらは高々 98 + 97 + ... + 1 = 99 × 44 = 4356 通り(等差数列の和の公式を利用)であるため、全ての組を調べても実行時間制限に間に合います。

入力される値

なし


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

条件を満たす正の整数 x , y について x × y の最大値を 1 行で出力してください。
出力の末尾には改行を入れてください。

問題一覧へ戻る

ページの先頭へ戻る