結果

問題 No.864 四方演算
ユーザー vwxyzvwxyz
提出日時 2023-12-08 05:39:17
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 224 ms / 1,000 ms
コード長 488 bytes
コンパイル時間 367 ms
コンパイル使用メモリ 12,416 KB
実行使用メモリ 10,624 KB
最終ジャッジ日時 2024-09-27 02:40:27
合計ジャッジ時間 5,494 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 27
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
readline=sys.stdin.readline

def Divisors(N):
    divisors=[]
    for i in range(1,N+1):
        if i**2>=N:
            break
        elif N%i==0:
            divisors.append(i)
    if i**2==N:
        divisors+=[i]+[N//i for i in divisors[::-1]]
    else:
        divisors+=[N//i for i in divisors[::-1]]
    return divisors

N=int(readline())
K=int(readline())
ans=0
for ac in Divisors(K):
    bd=K//ac
    ans+=max(0,min(ac-1,2*N+1-ac))*max(0,min(bd-1,2*N+1-bd))
print(ans)
0