白駿1546:平均|Python
1361 ワード
質問する
勢俊は期末試験に失敗した.勢俊は点数を偽造して家に持ち帰ることにした.まず勢俊は自分の点数の中で最高値を選んだ.この値をMと言います.そしてすべての点数を点数/M*100に変更しました.
例えば、ポテンシャル俊の最高点数が70で、数学点数が50であれば、数学点数は50/70*100で71.43点である.
上記の方法で勢俊の成績を再計算する場合は、新しい平均値を求めるプログラムを作成してください.
私がここでうとうとしているのではないでしょうか.やった...
乗算と除算の間に交換法則が成立すると思います.
50/7000は0.0071...このまま待っていたら.
除法では交換法則が成立しないので,左から解く.
)小学校に再入学します(目を閉じて...)
入力
1行目は試験科目の個数Nを与える.この値は1000以下です.2列目は勢俊の今の成績をあげた.この値は100以下の整数ではなく、少なくとも1つの値が0より大きい.
しゅつりょく
最初の行に新しい平均値を出力します.実際の正解と出力値の絶対誤差または相対誤差が10−2以下であることが正解である.
に答える
n=int(input())
OrgList = list(map(int, input().split()))
m=max(OrgList)
NewList=[]
for score in OrgList:
NewList.append(score/m*100)
result= sum(NewList)/n
print(result)
入力科目数n元の点数をOrgListに入れる
(オリジナル歌手…の意味…ははは…)
map()関数が使用されます.map(変換関数、データ)
データはlist,tuple,input()で入力を受け付ける
.split()は、スペースを基準に文字を区切ります.
追加します.split(「区切り文字」)/.split(「区切り文字」、分割数)
の形態も存在する.
max()関数を使用して元の点数の最大値を検索
新しい平均NewListの生成
for文対score変数を使用し、範囲はOrgList
このときscoreはOrgListの値です
NewListでappendを使用して変形スコアを追加
その結果、最終的な変形値の平均値が見つかります.
しかしPythonには平均的な内蔵関数がないようです...
実はcにもないようです.
自然にavg弾いてくれた私.ちょっと見慣れない.
調べてみるとnumpyモジュールで内蔵関数が使えるそうです.
うんざりだ.ほほほ
Reference
この問題について(白駿1546:平均|Python), 我々は、より多くの情報をここで見つけました https://velog.io/@dbrudskql823/백준-1546-평균-파이썬テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol