码迷,mamicode.com
首页 > 其他好文 > 详细

uva 1549 - Lattice Point(暴力)

时间:2014-08-18 20:33:52      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:style   http   color   os   io   for   ar   amp   

题目链接:uva 1549 - Lattice Point

题目大意:给定圆半径,以原点为圆心,求园内有多少个整数点。

解题思路:首先坐标轴将圆分成4份,所以只要单独考虑每一块的个数乘4再加1即可(原点)

#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>

using namespace std;
const double pi = 4 * atan(1.0);
typedef long long ll;

ll solve (ll R) {
    ll ret = 0;

    ll r = R, M = R * R;
    for (ll i = 0; i <= R; i++) {
        while (r * r + i * i > M)
            r--;
        ret += r;
    }
    return 4 * ret + 1;
}

int main () {
    ll n;
    while (scanf("%lld", &n) == 1) {
        printf("%lld\n%lld\n", n, solve(n));
    }
    return 0;
}

uva 1549 - Lattice Point(暴力),布布扣,bubuko.com

uva 1549 - Lattice Point(暴力)

标签:style   http   color   os   io   for   ar   amp   

原文地址:http://blog.csdn.net/keshuai19940722/article/details/38664809

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!