help!小学生第121道题4个RE,其他AC,把数组放大更多RE
查看原帖
help!小学生第121道题4个RE,其他AC,把数组放大更多RE
424241
liujiafang楼主2021/9/20 07:49
#include <iostream>
#include <cmath>
#include <ctime>
using namespace std;
long long a[105][105];
int main()
{
    long long n, m, r, x, y, cnt = 0,q=1;
    cin >> n >> m >> r;
    for (int z = 1; z <= m; z++)
    {
        cin >> x >> y;
        for (int i = x - r; i <= x + r; i++)
        {
            if (i <= x)
            {
                int k = (int)sqrt(r*r-(x-i)*(x-i));
                for (int j = y - k; j <= y + k; j++)
                {
                    if (a[i][j] != 1&&i<=n&&j<=n&&i>=1&&j>=1)
                    {
                        a[i][j] = 1;
                        cnt++;
                    }
                }
            }
            else
            {
                int k = sqrt(r*r-q*q);
                for (int j = y - k; j <= y + k; j++)
                {
                    if (a[i][j] != 1&&i<=n&&j<=n&&i>=1&&j>=1)
                    {
                        a[i][j] = 1;
                        cnt++;
                    }
                }
                q++;
            }
        }
        q = 1;
    }
    cout << cnt << endl;
    return 0;
}
2021/9/20 07:49
加载中...