結果
問題 | No.781 円周上の格子点の数え上げ |
ユーザー |
![]() |
提出日時 | 2019-02-23 17:48:07 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 70 ms / 2,000 ms |
コード長 | 572 bytes |
コンパイル時間 | 1,288 ms |
コンパイル使用メモリ | 157,924 KB |
実行使用メモリ | 42,580 KB |
最終ジャッジ日時 | 2024-11-30 13:34:49 |
合計ジャッジ時間 | 3,199 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 21 |
ソースコード
#include<bits/stdc++.h> using namespace std; typedef long long int ll; int mem[10000001]; int main(){ int x,y,res=0; cin >> x >> y; for(int i=0;i<10000001;i++)mem[i] = 0; for(int i=0;i<4001;i++)for(int j=i+1;j<4001;j++){ if(i*i+j*j <= 10000001){ if(i == 0 || j == i) mem[i*i+j*j] += 4; else mem[i*i+j*j] += 8; } } for(int i=0;i<4001;i++)if(i*i*2 <= 10000001)mem[i*i*2] += 4; for(int i=x;i<=y;i++)res = max(res,mem[i]); cout << res << endl; return 0; }