プログラマ脳を鍛える数学パズル 12
平方を取った時…なんて問題。
問題文は本読んで…
プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問
- 作者: 増井敏克
- 出版社/メーカー: 翔泳社
- 発売日: 2015/10/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (11件) を見る
文字列化して、先頭 10 桁を取り、0-9 が含まれてればOK
from math import sqrt def contain_nums(v): # 0-9 が含まれてるかどうか for n in range(10): str_n = str(n) if not str_n in v: return False return True num = 0 while True: num += 1 sq = '{0:10.10f}'.format(sqrt(num)) sq = sq.replace('.', '') # 整数部分を含む if contain_nums(sq[0:10]): print(f'num:{num}, value:{sqrt(num)}') break num = 0 while True: num += 1 sq = '{0:10.10f}'.format(sqrt(num)) idx = sq.index('.') + 1 sq = sq[idx:] # 小数点以下のみ if contain_nums(sq[0:10]): print(f'num:{num}, value:{sqrt(num)}') break