BETA

PythonでAtCoderのABC解けるようになりたい(3)

投稿日:2020-06-08
最終更新:2020-06-23

ハロー、ツノディノダヨ。
今日ハAtCoderノ151回B問題、『Achieve the Goal』ヲPythonデ解イテミタヨ。

#N = テストの回数,K = テストの最高点,M = 目標平均点  
N,K,M = map(int,input().split())  
#A = 今までのテストの点数  
A = [map(int,input().split())]  

マズハ入力ヲ受ケ取ルヨ。コメントヲ書クコトデ、何ヲ代入シタカ分カリヤスクシテイルヨ。
シカシココデエラーガ起キルヨ。ナンデダロウネ。

A = [map(int,input().split())]  
↓  
A = list(map(int,input().split()))  

ドウヤラリストヘノ入力部分ガマズカッタミタイ。
下ノヨウニ書キ換エルコトデ、入力デキルヨウニナッタヨ。

#L = 最低限取るべき合計点  
L = N * M  
#S = 今の合計点  
S = sum(A)  
#P = 必要な点数  
P = L - S  

次ニ出力条件に使イソウナ奴ヲ計算シテ代入シテオクヨ。
目標平均点 * テストの回数
最低限取ル必要ノアル合計点
sum(今までの点数)
今マデノテストの合計点
最低限の合計点 - 今までの合計点
今回ノテストデ取ルベキ点数ヲ求メタヨ。

#目標平均点が取れるか?  
#必要な点数が P ≦ K 以内か?  
if P <= K:  
    #目標達成の点数  
    print(P)  
else:  
    #目標達成不可能  
    print(-1)  

最後ニ出力スル数字ヲ求メルヨ。
取ルベキ点数ガテストノ最高点ヨリ大キイト、ドウ頑張ッテモ目標ニハ届カナイネ。
コノ場合ハ -1 ヲ出力シテ、ソレ以外ハ取ルベキ点数ヲ出力スルヨ。
デモコレダト不正解ニナッタンダ。ナンデダロウ。

ドウヤラ P ノ値ガマイナスノ時ガアルミタイ。マイナスハテストノ点数デハアリエナイカラ、マイナスノ時ハ 0 ヲ出力シナイトイケナイネ。

#目標平均点が取れるか?  
#必要な点数が P ≦ K 以内か?  
if P <= K:  
    #0 <= Pの場合  
    if 0 <= P:  
        #目標達成の点数  
        print(P)  
    #P < 0の場合  
    else:  
        #0点で達成できる  
        print(0)  
else:  
    #目標達成不可能  
    print(-1)  

コレデマイナスノ時ハ0ヲ出力スルヨウニナッタヨ。問題モ正解ニナッタヨ。
エラーノ原因、何故正解デキナイカヲ考エルイイ問題ダッタヨ。

追記:なんだこれ

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

tnodino(つのでぃの)のブログ。日頃の内容を記事にしています。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう