結果
問題 |
No.800 四平方定理
|
ユーザー |
![]() |
提出日時 | 2019-03-17 21:49:01 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,220 bytes |
コンパイル時間 | 748 ms |
コンパイル使用メモリ | 78,916 KB |
実行使用メモリ | 113,952 KB |
最終ジャッジ日時 | 2024-07-07 21:43:54 |
合計ジャッジ時間 | 4,778 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | -- * 3 |
other | AC * 10 TLE * 9 -- * 11 |
ソースコード
#include <iostream> #include<vector> #include<algorithm> #include<string> #include<map> #include<set> #include<stack> #include<queue> #include<math.h> using namespace std; typedef long long ll; #define int long long typedef vector<int> VI; #define REP(i,n) for(int i=0;i<n;i++) #define eREP(i,n) for(int i=0;i<=n;i++) #define FOR(i,a,b) for(int i=(a);i<(b);++i) #define eFOR(i,a,b) for(int i=(a);i<=(b);++i) #define SORT(c) sort((c).begin(),(c).end()) #define rSORT(c) sort((c).rbegin(),(c).rend()) #define LB(x,a) lower_bound((x).begin(),(x).end(),(a)) #define UB(x,a) upper_bound((x).begin(),(x).end(),(a)) #define INF 1000000000 #define LLINF 9223372036854775807 #define mod 1000000007 //vector<vector<int> > dp; //vector<vector<vector<int> > > vvvi; //dp=vector<vector<int> >(N, vector<int>(M,0)); //vector<pair<int,int> > v; //v.push_back(make_pair(x,y)); signed main(){ cin.tie(0); ios::sync_with_stdio(false); int N, D; cin >> N >> D; map<int, int>A; map<int, int>B; int ans = 0; eFOR(i, 1, N) { eFOR(j, 1, N) { //A[i*i + j * j]++; B[i*i - j * j]++; } } eFOR(i, 1, N) { eFOR(j, 1, N) { ans+=B[D-(i*i + j * j)]; //ans+=A[D-(i*i - j * j)]; } } cout << ans << endl; return 0; }