[python]約数と加算
4876 ワード
月コードは第2四半期>約数の個数と加算に挑戦します
[問題の説明]
パラメータは2つの整数leftとrightです.左から右までのすべての数でsolution関数を完了し、約数の個数に偶数因数を加え、約数の個数に奇数因数を加えて減算数を返します.
[制限条件] 1 ≤ left ≤ right ≤ 1,000
[I/O例]
[IO例説明]
I/O例#1次の表は、13から17までのすべての数字の合計数を示しています.
したがって、13+14+15-16+17=43を返さなければなりません.I/O例#2次の表は、24から27までのすべての数字の合計数を示しています.
したがって、24-25+26+27=52を返さなければなりません.私の答え
考えてみろ!%(結果の残りを除いて戻る)で薬水であることを確認し、cntに薬水の個数を加えた. cntが偶数なら答えにつけて奇数なら外すifゲートを作りました.
2階建ての扉ですが通過しました.😓
もっと簡単なコードは他の人のコードを参照しましょう.
他の人の解答#1平方数の約数は奇数個を利用した解法である.
[問題の説明]
パラメータは2つの整数leftとrightです.左から右までのすべての数でsolution関数を完了し、約数の個数に偶数因数を加え、約数の個数に奇数因数を加えて減算数を返します.
[制限条件]
[IO例説明]
I/O例#1
考えてみろ!
def solution(left, right):
answer = 0 # +약수가 짝수인 수,-약수가 홀수인 수
for i in list(range(left,right+1)):
cnt = 0 # 약수의 개수를 받을 변수
for j in list(range(1,i+1)):
if i%j == 0:
cnt += 1
if cnt%2 == 0:
answer += i
else:
answer -= i
return answer
2階建ての扉ですが通過しました.😓
もっと簡単なコードは他の人のコードを参照しましょう.
他の人の解答#1
def solution(left, right):
answer = 0
for i in range(left,right+1):
if int(i**0.5)==i**0.5:
answer -= i
else:
answer += i
return answer
参考にしてください!Reference
この問題について([python]約数と加算), 我々は、より多くの情報をここで見つけました https://velog.io/@eunvi/python약수의-개수와-덧셈テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol