zoukankan      html  css  js  c++  java
  • UVA 10200 Prime Time 水

    题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1141

    题意:判断区间[a,b]的f(i)是否为素数,f(i)=i*i+i+40;

    思路:打个表,然后注意精度;

    #include<bits/stdc++.h>
    using namespace std;
    #define ll long long
    #define esp 1e-13
    const int N=1e4+10,M=1e6+50000,inf=1e9+10,mod=1000000007;
    int prime(int n)
    {
        if(n<=1)
        return 0;
        if(n==2)
        return 1;
        if(n%2==0)
        return 0;
        int k, upperBound=n/2;
        for(k=3; k<=upperBound; k+=2)
        {
            upperBound=n/k;
            if(n%k==0)
                return 0;
        }
        return 1;
    }
    int f(int x)
    {
        return x*x+41+x;
    }
    int flag[N];
    int main()
    {
        int x,y,i,z,t;
        for(i=0;i<=10000;i++)
        if(prime(f(i)))
        flag[i+1]=flag[i]+1;
        else
        flag[i+1]=flag[i];
        while(~scanf("%d%d",&x,&y))
        {
            double sum=flag[y+1]-flag[x];
            double di=(y-x+1);
            double ans=sum/di*100.0+1e-8;
            printf("%.2f
    ",ans);
        }
        return 0;
    }
  • 相关阅读:
    网络七层模型
    border-radius 50% 和100%
    数据绑定
    前端一些基础的重要的知识2
    用 ul 和 li 模拟select控件
    两列布局
    盒子的水平垂直居中几种方法
    TCP时间戳
    帧聚合
    skb buff数据结构
  • 原文地址:https://www.cnblogs.com/jhz033/p/5763907.html
Copyright © 2011-2022 走看看