結果
| 問題 |
No.944 煎っぞ!
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-03-31 00:00:10 |
| 言語 | Kuin (KuinC++ v.2021.9.17) |
| 結果 |
AC
|
| 実行時間 | 51 ms / 3,000 ms |
| コード長 | 916 bytes |
| コンパイル時間 | 2,679 ms |
| コンパイル使用メモリ | 149,744 KB |
| 実行使用メモリ | 18,752 KB |
| 最終ジャッジ日時 | 2024-09-16 10:28:02 |
| 合計ジャッジ時間 | 5,525 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 35 |
ソースコード
func main()
var n: int :: cui@input().toInt(&)
var ss: [][]char :: cui@input().split(" ")
var x: []int :: #[n]int
var total: int :: 0
for i(0, n - 1)
do x[i] :: ss[i].toInt(&)
do total :+ x[i]
end for
func getDivisors(n: int): []int
var res: []int :: #[0]int
var i: int :: 1
while loop(true)
if(i * i > n)
break loop
end if
if(n % i = 0)
do res :~ [i]
end if
if(n / i <> i)
do res :~ [n / i]
end if
do i :+ 1
end while
do res.sort()
ret res
end func
var divisors: []int :: getDivisors(total)
var ans: int :: 0
for i(0, ^divisors - 1)
var divisor: int :: divisors[i]
var sum: int :: 0
var cnt: int :: 0
for j(0, n - 1)
do sum :+ x[j]
if(sum > divisor)
skip i
end if
if(sum = divisor)
do cnt :+ 1
do sum :: 0
end if
end for
if(sum = 0)
do ans :: cnt
break i
end if
end for
do cui@print("\{ans}\n")
end func