結果

問題 No.781 円周上の格子点の数え上げ
ユーザー mai
提出日時 2019-01-12 00:05:40
言語 C++17(1z)
(gcc 8.2.0)
結果
AC  
実行時間 263 ms
コード長 402 Byte
コンパイル時間 2,470 ms
使用メモリ 79,616 KB
最終ジャッジ日時 2019-02-23 19:00:20

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
in1.txt AC 245 ms
79,616 KB
in2.txt AC 241 ms
79,616 KB
in3.txt AC 246 ms
79,612 KB
in4.txt AC 244 ms
79,616 KB
in5.txt AC 262 ms
79,612 KB
in6.txt AC 255 ms
79,612 KB
in7.txt AC 246 ms
79,616 KB
in8.txt AC 253 ms
79,612 KB
in9.txt AC 236 ms
79,612 KB
in10.txt AC 252 ms
79,612 KB
in11.txt AC 250 ms
79,612 KB
in12.txt AC 248 ms
79,612 KB
in13.txt AC 255 ms
79,616 KB
in14.txt AC 259 ms
79,612 KB
in15.txt AC 255 ms
79,616 KB
in16.txt AC 253 ms
79,612 KB
in17.txt AC 242 ms
79,616 KB
in18.txt AC 263 ms
79,616 KB
in19.txt AC 246 ms
79,612 KB
in20.txt AC 243 ms
79,616 KB
in21.txt AC 245 ms
79,616 KB
テストケース一括ダウンロード

ソースコード

diff #
#pragma GCC optimize ("O3")
#include "bits/stdc++.h"

using namespace std;
using ll = long long int;

const ll h = 10000000;
ll m[h+10];

int main(){
    int a, b; cin >> a >> b;
    
    for (ll x = 0; x<=4000; ++x) for (ll y = 1; y<=4000; ++y) if (x*x+y*y <= h) m[x*x+y*y]+=4;
    ll best = 0;
    for (int c = a; c<=b; ++c) best = max(best, m[c]);
    
    cout << best << endl;
    
    return 0;
}
0