結果
問題 | No.864 四方演算 |
ユーザー | mgingin142857 |
提出日時 | 2019-08-16 21:44:14 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 13 ms / 1,000 ms |
コード長 | 662 bytes |
コンパイル時間 | 1,555 ms |
コンパイル使用メモリ | 168,180 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-25 10:44:41 |
合計ジャッジ時間 | 2,723 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 |
ソースコード
#include<bits/stdc++.h> using namespace std; typedef long long ll; #define pb push_back #define fi first #define se second typedef pair<ll,ll> P; #define Mod 1000000007 using VP = vector<P>; using VVP = vector<VP>; using VI = vector<ll>; using VVI = vector<VI>; using VVVI = vector<VVI>; #define INF 1234567890 ll n,k; ll cal(ll i){ if(i>2*n||i<=0) return 0; else if(i<=n+1) return i-1; else return cal(2*n+2-i); } int main(){ ll i,j; cin>>n>>k; ll ans=0; for(i=1;i*i<=k;i++){ if(k%i==0){ ans+=2*cal(i)*cal(k/i); } if(i*i==k) ans-=cal(i)*cal(k/i); } cout<<ans<<endl; return 0; }