結果
問題 | No.944 煎っぞ! |
ユーザー |
|
提出日時 | 2022-07-06 15:39:12 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 2,305 bytes |
コンパイル時間 | 238 ms |
コンパイル使用メモリ | 82,176 KB |
実行使用メモリ | 101,860 KB |
最終ジャッジ日時 | 2024-12-21 17:13:39 |
合計ジャッジ時間 | 6,080 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 WA * 5 |
ソースコード
###約数列挙###def make_divisors(n):lower_divisors, upper_divisors = [], []i = 1while i * i <= n:if n % i == 0:lower_divisors.append(i)if i != n // i:upper_divisors.append(n//i)i += 1return lower_divisors + upper_divisors[::-1]###順列###def nPr(n, r):npr = 1for i in range(n, n-r, -1):npr *= ireturn npr###組合せ###def nCr(n, r):factr = 1r = min(r, n - r)for i in range(r, 1, -1):factr *= ireturn nPr(n, r)/factrimport sys, refrom math import ceil, floor, sqrt, pi, factorial, gcdfrom copy import deepcopyfrom collections import Counter, deque, defaultdictfrom heapq import heapify, heappop, heappushfrom itertools import accumulate, product, combinations, combinations_with_replacement, permutationsfrom bisect import bisect, bisect_left, bisect_rightfrom functools import reducefrom decimal import Decimal, getcontextdef i_input(): return int(input())def i_map(): return map(int, input().split())def i_list(): return list(i_map())def i_row(N): return [i_input() for _ in range(N)]def i_row_list(N): return [i_list() for _ in range(N)]def s_input(): return input()def s_map(): return input().split()def s_list(): return list(s_map())def s_row(N): return [s_input for _ in range(N)]def s_row_str(N): return [s_list() for _ in range(N)]def s_row_list(N): return [list(s_input()) for _ in range(N)]def lcm(a, b): return a * b // gcd(a, b)def get_distance(x1, y1, x2, y2):d = sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)return ddef rotate(table):n_fild = []for x in zip(*table[::-1]):n_fild.append(x)return n_fildsys.setrecursionlimit(10 ** 7)INF = float('inf')MOD = 10 ** 9 + 7MOD2 = 998244353###関数コピーしたか?###def main():n = int(input())A = i_list()sum_a = sum(A)nums = make_divisors(sum_a)nums.sort()#print(nums)ans = 0for i in range(len(nums)):now = nums[i]cou = 0score = 0for j in range(n):cou += A[j]#print(cou, i)if cou == now:score += 1cou = 0if cou > now:breakans = max(ans, score)print(ans)if __name__ == '__main__':main()