(python初心者) プログラムの解説をしてくださる方はいませんか? (投稿ID : xty52)

1
お気に入り登録
1
お気に入り登録済み
お気に入りに登録しました
ログインが必要です
更新2022年10月15日 01:28
作成2022年10月14日 21:01

あなたは友達とボールのパス回しをしています。
どうやら、このパス回しはルールが特徴的なようです。

最初に各人はそれぞれボールをいくつか所持しています。
その後、適当な順番でボールをパスしていくのですが、この際にパスする相手とボールの個数を宣言します。
宣言した個数以上のボールを持っている場合は宣言した個数のボールを、そうでない場合は持っているボールすべてを、選んだ相手にパスします。
なお、ボールを所持できる数に上限はありません。

このパス回しの情報が順番に与えられるので、最終的に各人が持っているボールの個数を求めてください。
下図は入力例 1 の様子を表しています。




↑こういった問題がありまして、

N = int(input())
s = [0]
for i in range(N):
s.append(int(input()))
M = int(input())
a = []
for i in range(M):
a.append(list(map(int, input().split())))
for i in a:
s[i[1]] += min(s[i[0]], i[2])
s[i[0]] = max(s[i[0]]-i[2], 0)
for i in range(1, len(s)):
print(s[i])


↑上記のようなコードが解答としてあるのですが解答のコードを見てもいまいち理解できない部分があります。
かみ砕いて解説して頂ける方はいませんか?

ちなみにその問題のurlです。

https://paiza.jp/challenges/483/show

地域
渋谷区 - 代々木神園町
JR山手線 - 原宿駅
投稿者にメールで問い合わせ

※問い合わせは会員登録とログイン必須です

注意事項

ジモティーからの注意事項

トラブルの際は 警察等の捜査依頼に積極的に協力しております。
ご相談は こちら

詐欺やトラブルにご注意ください

投稿者 Syun
男性
投稿: 3109
身分証
電話番号
認証とは
はじめまして新卒2年目の25歳です。アプリ開発エンジニアとしてIT企業で働...
評価
  • 良い 退会済みユーザー

    この度はありがとうございました。また機会があればよろしくお願いします。

  • 良い たーぼう

    スムーズにやり取りができました。お土産までいただき感謝しております。ありが...

コメント

0件
良識のあるコメントを心がけご利用ください。
不適切な表現や、不快な言葉遣いなどは 利用制限アカウント停止 の対応を取らせていただいております。
この投稿にはまだコメントはありません。
コメントをしてみましょう。
コメント内容をご確認ください

コメントは公開されます。

短いコメントはご覧になった他のユーザー様が不快に感じることがあります。

内容を修正

教えての助け合いの関連記事

(python初心者) プログラムの解説... 東京 助け合い を見ている人は、こちらの記事も見ています。

Syunさんのその他の投稿記事

関連の掲示板

ご利用ガイド
新着投稿の通知をメールで受け取る

登録した条件で投稿があった場合、メールでお知らせします。

キーワード
+ さらに詳しい条件を登録
カテゴリ
エリア
オンライン決済
配送可能
ー 閉じる
メールアドレス

利用規約 をご確認の上、登録をお願いします。