結果
問題 |
No.1318 ABCD quadruplets
|
ユーザー |
👑 ![]() |
提出日時 | 2020-07-17 23:36:28 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 241 ms / 2,000 ms |
コード長 | 964 bytes |
コンパイル時間 | 3,085 ms |
コンパイル使用メモリ | 220,388 KB |
最終ジャッジ日時 | 2025-01-11 23:34:05 |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
#pragma GCC target("avx") #pragma GCC optimize("unroll-loops") #include <bits/stdc++.h> using namespace std; int main(){ int n, m; cin >> n >> m; int ans[1600001] = {}; for(int a = 0; a <= m; a++) for(int b = 0; b <= a; b++) for(int c = 0; c <= b; c++) for(int d = 0; d <= c; d++){ const int k = a * a + b * (a + b) + c * (a + b + c) + d * (a + b + c + d); if(k > n) break; if(a == b){ if(b == c){ if(c == d) ans[k] += 1; else ans[k] += 4; } else{ if(c == d) ans[k] += 6; else ans[k] += 12; } } else{ if(b == c){ if(c == d) ans[k] += 4; else ans[k] += 12; } else{ if(c == d) ans[k] += 12; else ans[k] += 24; } } } for(int i = 0; i <= n; i++) cout << ans[i] << '\n'; }