https://atcoder.jp/contests/abc057/tasks/abc057_cの問題のainemさんの解答で
python
1n = int(input()) 2ans = 100 3for i in range(1, int(n**.5)+1): 4 if n%i: continue 5 #print(i, n//i) 6 ans = min(ans, max(len(str(i)),len(str(n//i)))) 7print(ans)
とあるのですが、if文の中では余りがあるときにtrueになるのか、また値が0の時にtrueになるのかわからず、
https://docs.python.org/ja/3/reference/expressions.html#booleansの
ブール演算のコンテキストや、式が制御フローの文で使われる際には、次の値は偽だと解釈されます: False 、 None 、すべての型における数値の 0、空の文字列、空のコンテナ (文字列、タプル、リスト、辞書、集合、凍結集合など)。 それ以外の値は真だと解釈されます。
とありますが、よくわからないのでご教授お願い致します。
環境
vscode
windows10
python3.9.5
回答1件
あなたの回答
tips
プレビュー