結果
問題 | No.2187 三立法和 mod 333 |
ユーザー |
|
提出日時 | 2023-01-13 21:52:12 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 3,185 bytes |
コンパイル時間 | 3,052 ms |
コンパイル使用メモリ | 375,184 KB |
最終ジャッジ日時 | 2025-02-10 02:29:07 |
ジャッジサーバーID (参考情報) |
judge1 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | TLE * 33 |
ソースコード
#pragma GCC optimize("O3")#pragma GCC optimize(2)#pragma GCC optimize(3)#pragma GCC optimize("Ofast")#pragma GCC optimize("inline")#pragma GCC optimize("-fgcse")#pragma GCC optimize("-fgcse-lm")#pragma GCC optimize("-fipa-sra")#pragma GCC optimize("-ftree-pre")#pragma GCC optimize("-ftree-vrp")#pragma GCC optimize("-fpeephole2")#pragma GCC optimize("-ffast-math")#pragma GCC optimize("-fsched-spec")#pragma GCC optimize("unroll-loops")#pragma GCC optimize("-falign-jumps")#pragma GCC optimize("-falign-loops")#pragma GCC optimize("-falign-labels")#pragma GCC optimize("-fdevirtualize")#pragma GCC optimize("-fcaller-saves")#pragma GCC optimize("-fcrossjumping")#pragma GCC optimize("-fthread-jumps")#pragma GCC optimize("-funroll-loops")#pragma GCC optimize("-freorder-blocks")#pragma GCC optimize("-fschedule-insns")#pragma GCC optimize("inline-functions")#pragma GCC optimize("-ftree-tail-merge")#pragma GCC optimize("-fschedule-insns2")#pragma GCC optimize("-fstrict-aliasing")#pragma GCC optimize("-falign-functions")#pragma GCC optimize("-fcse-follow-jumps")#pragma GCC optimize("-fsched-interblock")#pragma GCC optimize("-fpartial-inlining")#pragma GCC optimize("no-stack-protector")#pragma GCC optimize("-freorder-functions")#pragma GCC optimize("-findirect-inlining")#pragma GCC optimize("-fhoist-adjacent-loads")#pragma GCC optimize("-frerun-cse-after-loop")#pragma GCC optimize("inline-small-functions")#pragma GCC optimize("-finline-small-functions")#pragma GCC optimize("-ftree-switch-conversion")#pragma GCC optimize("-foptimize-sibling-calls")#pragma GCC optimize("-fexpensive-optimizations")#pragma GCC optimize("inline-functions-called-once")#pragma GCC optimize("-fdelete-null-pointer-checks")#pragma GCC optimize("Ofast")#include <bits/stdc++.h>using namespace std;long long int psum[333][4445];long long int pow4[4445];long long int pow3[4445];int main(void){cin.tie(0);ios::sync_with_stdio(false);long long int A;cin >> A;for(int i=1;i<=4444;i++){long long int val = i;val*=i;val*=i;long long int val2 = val;val2*=i;val%=333;pow3[i] = val;pow4[i] = val2;psum[val][i] += 1;}for(int i=0;i<333;i++){for(int j=2;j<=4444;j++){psum[i][j] += psum[i][j-1];}}long long int res = 0;for(int x=1;x<=4444;x++){for(int y=x;y<=4444;y++){long long int val = pow4[x] + pow4[y];if(val > pow4[4444]) break;long long int temp = pow4[4444] - val;long long int z = sqrt(sqrt(temp));while(1){if(pow4[z] > temp){z-=1;break;}z++;}long long int val2 = pow3[x];val2 += pow3[y];val2%=333;val2 = A + 333 - val2;val2%=333;res += psum[val2][z];if(x!=y) res += psum[val2][z];}}cout << res << '\n';return 0;}