这道题是道规律极强的题。。。真佩服在赛场上快速找到规律的人。

d[i]              a[i]            res[i]

0                 1.000000

Case 1: 0.500000     2.000000    1.000000

Case 2: 0.375000     2.750000    1.500000

Case 3: 0.312500     3.375000    2.000000

Case 4: 0.273438     3.921875    2.375000

Case 5: 0.246094     4.414063    2.750000

Case 6: 0.225586     4.865234    3.062500

Case 7: 0.209473     5.284180    3.375000

Case 8: 0.196381     5.676941    3.648438

Case 9: 0.185471     6.047882    3.921875

Case 10: 0.176197    6.400276    4.167969

Case 11: 0.168188    6.736652    4.414063

Case 12: 0.161180    7.059013    4.639648

Case 13: 0.154981    7.368975    4.865234

Case 14: 0.149446    7.667867    5.074707

Case 15: 0.144464    7.956796    5.284180

Case 16: 0.139950    8.236696    5.480560

Case 17: 0.135834    8.508363    5.676941

Case 18: 0.132061    8.772484    5.862411

Case 19: 0.128585    9.029655    6.047882

Case 20: 0.125371    9.280396    6.224079

易发现,偶数的res[i]=(res[i-1]+res[i+1])/2

故只要知道奇数位的值即可。抽象成序列a[i]。相邻两项做差,抽象出d[i]序列。

化为分数,相邻两项做商,发现d[i]=d[i-1]*(2*i-1)/(2*i)。

不一定要用整数来找规律,可以试试分数。或许会有意外的收获哦。

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=;
double a[maxn], d[maxn];
void getd()
{
d[]=0.5;
for(int i=; i<maxn; i++)
d[i]=d[i-]*(*i-)/(*i);
}
void geta()
{
a[]=1.0;
for(int i=; i<maxn; i++)
a[i]=a[i-]+*d[i];
}
int main()
{
getd();
geta();
int t, ca=, n;
scanf("%d", &t);
while(t--)
{
scanf("%d", &n);
printf("Case %d: ", ca++);
if(n&)
printf("%.6lf\n", a[n/]);
else
printf("%.6lf\n", (a[(n-)/]+a[(n+)/])*0.5);
}
return ;
}

hdu Random Sequence的更多相关文章

  1. HDU 3397 Sequence operation(线段树)

    HDU 3397 Sequence operation 题目链接 题意:给定一个01序列,有5种操作 0 a b [a.b]区间置为0 1 a b [a,b]区间置为1 2 a b [a,b]区间0变 ...

  2. HDU 5919 Sequence II(主席树+逆序思想)

    Sequence II Time Limit: 9000/4500 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) To ...

  3. hdu 5146 Sequence

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5146 Sequence Description Today we have a number sequ ...

  4. HDU 6395 Sequence 【矩阵快速幂 && 暴力】

    任意门:http://acm.hdu.edu.cn/showproblem.php?pid=6395 Sequence Time Limit: 4000/2000 MS (Java/Others)   ...

  5. hdu 5312 Sequence(数学推导——三角形数)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5312 Sequence Time Limit: 2000/2000 MS (Java/Others)  ...

  6. hdu 1711Number Sequence (KMP入门,子串第一次出现的位置)

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  7. hdu 3397 Sequence operation(线段树:区间更新)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3397 题意:给你一个长度为n的0,1序列,支持下列五种操作, 操作0(0 a b):将a到b这个区间的 ...

  8. HDU 1141---Brackets Sequence(区间DP)

    题目链接 http://poj.org/problem?id=1141 Description Let us define a regular brackets sequence in the fol ...

  9. hdu 1711Number Sequence

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1711 数字KMP,原来还能这么用 #include<stdio.h> ],b[]; ]; ...

随机推荐

  1. Java for LeetCode 073 Set Matrix Zeroes

    Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place. 解题思路: ...

  2. codeforces 475A.Bayan Bus 解题报告

    题目链接:http://codeforces.com/problemset/problem/475/A 题目意思:输入一个整数 k(0 ≤ k ≤ 34),表示participants的人数,需要在一 ...

  3. google maps js v3 api教程(1) -- 创建一个地图

    原文地址 google maps javascript官方文档:https://developers.google.com/maps/documentation/javascript/ 在创建地图之前 ...

  4. Window环境下Python和Django的安装

    转载地址:http://blog.csdn.net/haoni123321/article/details/7593821 1.下载python,本文使用python-2.7.2.msi 2.下载dj ...

  5. Java Hour 33 Weather ( 6 )

    有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. Hour 33 CURD 之 Create 首先是Eclipse 排序的功能找 ...

  6. phpcms v9 如何实现用户登录

    因为有时候我们需要自己实现用户登录,比如我们用phpcms做一个微信Oauth2.0授权,授权之后直接登录,这过程中不需要用户输入账户和密码.所以我们就要搞清楚,phpcmsv9它是怎么实现用户登录的 ...

  7. vijos 1038 括号+路径 ***

    链接:点我 就是自己写不出来 #include <cstdio> #include <climits> #include <memory.h> using name ...

  8. 第五根k线

    无论是下落还是上涨的一波,到第五根k线就要注意了.要么加速,不然就要翻转了

  9. hdu 5753 Permutation Bo

    这里是一个比较简单的问题:考虑每个数对和的贡献.先考虑数列两端的值,两端的摆放的值总计有2种,比如左端:0,大,小:0,小,大:有1/2的贡献度.右端同理. 中间的书总计有6种可能.小,中,大.其中有 ...

  10. SU Demos-02Filtering-05Suk1k2filter

    本人数学不咋地,本demo也是一知半解,敬请谅解. 这是生成的脉冲数据