uva 10200

    xiaoxiao2025-01-06  9

    Submit  Status  Practice  UVA 10200  uDebug

    Description

    这题因为答案是浮点数,要在最后加一个极小值来调整答案

    #include <iostream> #include <cstring> #include <cstdio> #include <cmath> #include <algorithm> using namespace std; const int N = 10100; int prime(int x); int dp[N]; int main() {     memset(dp,0,sizeof(dp));     dp[0]=1;     for(int i=1;i<N;i++)     {         if(prime(i))         {             dp[i]=dp[i-1]+1;         }         else         {             dp[i]=dp[i-1];         }     }     int a, b;     while(scanf("%d %d", &a, &b)!=EOF)     {         if(a>b)         {             swap(a,b);         }         double m;         if(a==0)         {             m=dp[b]-dp[a]+1;         }         else         {              m=dp[b]-dp[a-1];         }         double n=(m*1.00)/((b-a+1)*1.00);         printf("%.2f\n",n*100+1e-8);     }     return 0; } int prime(int x) {     x=x*x+x+41;     int k=sqrt(x);     for(int i=2;i<=k+1;i++)     {         if(x%i==0)         {             return 0;         }     }     return 1; }

    转载请注明原文地址: https://ju.6miu.com/read-1295210.html
    最新回复(0)