题解 UVa11461

Posted whx1003

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了题解 UVa11461相关的知识,希望对你有一定的参考价值。

题目大意 多组数据,每组数据给出两个正整数 (a,b),请求出 (a,b) 之间的完全平方数的个数。

分析 前缀和即可。

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

const int maxn = 1E+5 + 5;

int a, b;
int ans[maxn];

int main()
{
    for(int i = 1; i * i <= 1E+5; ++i) ans[i * i] = 1;
    for(int i = 1; i <= 1E+5; ++i) ans[i] += ans[i - 1];
    while(~scanf("%d%d", &a, &b) && a && b)
        printf("%d
", ans[b] - ans[a - 1]);
}

以上是关于题解 UVa11461的主要内容,如果未能解决你的问题,请参考以下文章

UVA 11461 Square Numbers解题报告

题解Street Numbers [UVA138]

UVa 307 Sticks 题解

题解 UVa11727

题解 UVa13244

UVa 817 According to Bartjens 题解