高昌栄
3563 ワード
質問する
キャンディ博士の高昌栄さんはキャンディ工場を辞め、小学校の先生になった.
今日は昌英と四組の同級生が遠足に行く日だ.N人の学生はみなかばんにキャンディをいっぱい入れた.
しかし、多くのキャンディを持った学生は、少量のキャンディを持った学生を笑い始めた.
昌英さんは「子供たち、そんなことはできないよ.あーん、キャンディを持ってきて、先生が公平に分けてあげます」と言った.
昌英はすべての学生に同じキャンディを持たせたいと思っている.
それは可能ですか?
入力
第1行は、試験例の個数Tを与える.各テストケースは空の行で区切られ、次のように構成されています.
テストケースの最初の行は学生数Nを示した.次のN行は、学生1人当たりのキャンディの数を与えた.
Nは100000以下の自然数であり、キャンディの個数は0以上の整数である.学生たちが持ってきたキャンディの数は10^18以下です.(学生たちが持ってきたキャンディの数の和は10^18を超えることができます)
しゅつりょく
各テストボックスについて、同じキャンディを配布できればYES、なければNOを出力します.
入力例1
2
5
5
2
7
3
8
6
7
11
2
7
3
4
サンプル出力1
YES
NO
解法
キャンディ個数の和が大きすぎるため,キャンディ個数を積算する過程でモジュール乗算を利用した.
コード#コード#
import sys
T = int(sys.stdin.readline())
for _ in range(T):
empty = sys.stdin.readline()
N = int(sys.stdin.readline())
total = 0
for __ in range(N):
candy = int(sys.stdin.readline())
total = (candy + total) % N # 모듈러 연산
result = 'NO'
if total % N == 0:
result = 'YES'
print(result)
高昌栄
Reference
この問題について(高昌栄), 我々は、より多くの情報をここで見つけました
https://velog.io/@mynote/백준-2547-사탕-선생-고창영
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
キャンディ個数の和が大きすぎるため,キャンディ個数を積算する過程でモジュール乗算を利用した.
コード#コード#
import sys
T = int(sys.stdin.readline())
for _ in range(T):
empty = sys.stdin.readline()
N = int(sys.stdin.readline())
total = 0
for __ in range(N):
candy = int(sys.stdin.readline())
total = (candy + total) % N # 모듈러 연산
result = 'NO'
if total % N == 0:
result = 'YES'
print(result)
高昌栄Reference
この問題について(高昌栄), 我々は、より多くの情報をここで見つけました https://velog.io/@mynote/백준-2547-사탕-선생-고창영テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol