提出 #20008581


ソースコード 拡げる

#include <bits/stdc++.h>
using namespace std;

#define PI acos(-1)
#define pb push_back
#define int long long int
#define double long double
#define pi pair<int, int>
#define pii pair<pi, int>
#define fir first
#define sec second
#define MAXN 2000005
#define mod 1000000007

struct pt
{
  double x, y;
  pt operator+(pt p) { return {x + p.x, y + p.y}; } // soma de pontos
  pt operator-(pt p) { return {x - p.x, y - p.y}; } // subtração de pontos
  pt operator*(double d) { return {x * d, y * d}; } // multiplicação por um double
  pt operator/(double d) { return {x / d, y / d}; } // divisão por um double
};
double dist(pt a, pt b)
{
  pt c = a - b;
  return sqrt(c.x * c.x + c.y * c.y);
}
signed main()
{
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  double x, y, raio;
  cin >> x >> y >> raio;
  pt a = {x, y};
  int ans = 0;
  for (int i = -MAXN; i <= MAXN; i++)
  {
    pt b;
    int l = ceil(y), r = MAXN, kappa = ceil(y);
    while (l < r)
    {
      int mid = (l + r + 1) >> 1;
      b = {(double)i, (double)mid};
      (dist(a, b) <= raio) ? l = mid : r = mid - 1;
    }
    b = {(double)i, (double)l};
    if (dist(a, b) <= raio)
      ans += ((l - kappa) + 1);
    l = -MAXN, r = ceil(y) - 1;
    while (l < r)
    {
      int mid = (l + r) >> 1;
      pt b = {(double)i, (double)mid};
      (dist(a, b) <= raio) ? r = mid : l = mid + 1;
    }
    b = {(double)i, (double)l};
    if (dist(a, b) <= raio)
      ans += (kappa - l);
  }
  cout << ans << endl;
  return 0;
}
// pontos com coordenadas inteiras tal que dist(i, j) <= r

提出情報

提出日時
問題 D - Circle Lattice Points
ユーザ Ayallaa
言語 C++ (GCC 9.2.1)
得点 0
コード長 1618 Byte
結果 WA
実行時間 580 ms
メモリ 3792 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 400
結果
AC × 3
AC × 45
WA × 1
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt
All extreme_00.txt, extreme_01.txt, extreme_02.txt, extreme_03.txt, handmade_00.txt, handmade_01.txt, handmade_02.txt, handmade_marginal_00.txt, handmade_marginal_01.txt, handmade_marginal_02.txt, handmade_marginal_03.txt, handmade_marginal_04.txt, handmade_marginal_05.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_integer_00.txt, random_integer_01.txt, random_integer_02.txt, random_integer_03.txt, random_integer_04.txt, random_integer_05.txt, random_integer_06.txt, random_integer_07.txt, random_integer_08.txt, random_integer_09.txt, sample_01.txt, sample_02.txt, sample_03.txt
ケース名 結果 実行時間 メモリ
extreme_00.txt AC 577 ms 3712 KiB
extreme_01.txt AC 572 ms 3652 KiB
extreme_02.txt AC 576 ms 3716 KiB
extreme_03.txt AC 580 ms 3668 KiB
handmade_00.txt AC 548 ms 3644 KiB
handmade_01.txt AC 545 ms 3760 KiB
handmade_02.txt WA 538 ms 3648 KiB
handmade_marginal_00.txt AC 569 ms 3696 KiB
handmade_marginal_01.txt AC 574 ms 3688 KiB
handmade_marginal_02.txt AC 572 ms 3684 KiB
handmade_marginal_03.txt AC 566 ms 3648 KiB
handmade_marginal_04.txt AC 564 ms 3792 KiB
handmade_marginal_05.txt AC 571 ms 3716 KiB
random_00.txt AC 567 ms 3720 KiB
random_01.txt AC 549 ms 3644 KiB
random_02.txt AC 563 ms 3752 KiB
random_03.txt AC 555 ms 3648 KiB
random_04.txt AC 557 ms 3652 KiB
random_05.txt AC 545 ms 3636 KiB
random_06.txt AC 563 ms 3716 KiB
random_07.txt AC 546 ms 3756 KiB
random_08.txt AC 557 ms 3684 KiB
random_09.txt AC 566 ms 3656 KiB
random_10.txt AC 562 ms 3656 KiB
random_11.txt AC 553 ms 3660 KiB
random_12.txt AC 558 ms 3652 KiB
random_13.txt AC 565 ms 3716 KiB
random_14.txt AC 556 ms 3644 KiB
random_15.txt AC 551 ms 3640 KiB
random_16.txt AC 550 ms 3628 KiB
random_17.txt AC 566 ms 3652 KiB
random_18.txt AC 558 ms 3668 KiB
random_19.txt AC 542 ms 3652 KiB
random_integer_00.txt AC 552 ms 3640 KiB
random_integer_01.txt AC 548 ms 3716 KiB
random_integer_02.txt AC 560 ms 3644 KiB
random_integer_03.txt AC 560 ms 3724 KiB
random_integer_04.txt AC 551 ms 3624 KiB
random_integer_05.txt AC 543 ms 3788 KiB
random_integer_06.txt AC 557 ms 3624 KiB
random_integer_07.txt AC 554 ms 3712 KiB
random_integer_08.txt AC 550 ms 3696 KiB
random_integer_09.txt AC 568 ms 3636 KiB
sample_01.txt AC 545 ms 3636 KiB
sample_02.txt AC 543 ms 3644 KiB
sample_03.txt AC 567 ms 3656 KiB