結果
問題 |
No.800 四平方定理
|
ユーザー |
|
提出日時 | 2019-03-17 21:58:04 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 504 bytes |
コンパイル時間 | 1,523 ms |
コンパイル使用メモリ | 165,580 KB |
実行使用メモリ | 44,416 KB |
最終ジャッジ日時 | 2024-07-07 22:36:17 |
合計ジャッジ時間 | 27,398 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 TLE * 1 |
other | AC * 14 TLE * 7 -- * 9 |
ソースコード
#include <bits/stdc++.h> int main(){ int N; long long D; std::cin>>N>>D; std::map<long long, int> mp1; for(long long x=1;x<=N;++x){ for(long long y=1;y<=N;++y){ if(mp1.find(x*x+y*y)==mp1.end()){ mp1[x*x+y*y]=1; }else{ ++mp1[x*x+y*y]; } } } long long ans=0; for(long long z=1;z<=N;++z){ for(long long w=1;w<=N;++w){ if(mp1.find(w*w+D-z*z)!=mp1.end()){ ans +=mp1[w*w+D-z*z]; } } } std::cout<<ans<<std::endl; return 0; }