lightoj 1234 - Harmonic Number(技巧打表)

PLC编程标准之争:IEC61131与IEC61499核心区别与选型指南 在工业自动化领域,PLC编程长期依赖IEC61131标准,它定义了梯形图、结构化文本等语言,通过周期扫描机制保证确定性执行。然而,随着工业4.0和分布式控制场景的兴起,IEC61499以事件驱动模型打破传统范式,让功能块能跨设备协同,实现更灵活的柔性产线和模块化系统。理解两者在程序结构、数据交互、部署方式和实时性上的差异,是选型与工程落地的关键。本文从基础概念出发,剖析执行模型与架构演进,结合一线调试经验,帮助工程师在传统PLC与下一代标准之间做出理性决策。 阅读详情

In mathematics, the nth harmonic number is the sum of the reciprocals of the first n natural numbers:

In this problem, you are given n, you have to find Hn.

Input

Input starts with an integer T (≤ 10000), denoting the number of test cases.

Each case starts with a line containing an integer n (1 ≤ n ≤ 108).

Output

For each case, print the case number and the nth harmonic number. Errors less than 10-8 will be ignored.

Sample Input

Output for Sample Input

12

1

2

3

4

5

6

7

8

9

90000000

99999999

100000000

Case 1: 1

Case 2: 1.5

Case 3: 1.8333333333

Case 4: 2.0833333333

Case 5: 2.2833333333

Case 6: 2.450

Case 7: 2.5928571429

Case 8: 2.7178571429

Case 9: 2.8289682540

Case 10: 18.8925358988

Case 11: 18.9978964039

Case 12: 18.9978964139



这题让求1/1 + 1/2 + 1/3 + .... + 1/n 的和,然而n有1e8这么大,所以直接打表是会MLE的,所以就用到了一点技巧,每隔50个存一个和,这样200W个数还是可以存的下的。两个之间的数直接加上就行了。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>

using namespace std;

const int N = 1e8;
double sum[N/50+10];
void init()
{
    sum[0] = 0;
    double t = 0;
    for(int i=1;i<=N;i++)
    {
        t += 1.0/i;
        if(i % 50 == 0)
            sum[i/50] = t;
    }
}
int main(void)
{
    int T,i,n;
    init();
    scanf("%d",&T);
    int cas = 1;
    while(T--)
    {
        scanf("%d",&n);
        int t = n/50;
        double ans = sum[t];
        for(i=t*50+1;i<=n;i++)
            ans += 1.0/i;
        printf("Case %d: %.8f\n",cas++,ans);
    }

    return 0;
}


【CT/电镜 重建教程 1.1】层析成像的精确实空间迭代重建算法(RESIRE) 在此,我们报告了RESIRE算法的发展用于准确的断层重建。与实空间迭代算法相比,RESIRE使用傅里叶切片定理或Radon变换作为正向投影,使用线性变换作为反向投影,两者都具有高精度。与EST和GENFIRE相比,RESIRE是一种实空间迭代算法,可以在并行计算中实现快速运行时间。 阅读详情

相关推荐

零信任架构实战:“持续验证+动态授权”全流程解析(附策略引擎联动图)

《零信任实战指南:7图拆解核心流程与行业案例》摘要:本文通过7张架构图系统解析零信任五大核心流程:强身份认证、设备检查、动态授权、持续监控和自动降权。对比金融(重数据审计)与制造业(重物理绑定)的落地差异,指出三大常见误区及解决方案。数据显示,零信任可使安全响应提速60%,泄露成本降低45%。文章提供6个月实施路线图,强调零信任是"智能信任"体系,建议企业分阶段改造,优先保护核心系统。附赠金融/制造行业策略模板及甘特图示例。(149字)

sara_han的博客 776

LightOJ 1234

题意: 求sigma(1/i)|1<=i<=n 思路: 把询问排个序,然后for一遍就过… 好像有公式 #include<stdio.h> #include<string.h> #include<iostream> #include<algorithm> #include<math.h> #include<queue> #include<stack> #include<string> #in

humeay的博客 295

数字IC后端PPA优化实战:Timing一致性策略与Module Region布局技巧

本文深入探讨了数字IC后端设计中的PPA优化实战,重点解析了Timing一致性问题及其解决方案。通过调整Clock Uncertainty、Timing Derate和RC Scale Factor等关键参数,使Innovus等PR工具的分析结果更接近PrimeTime签核结果。同时,文章详细介绍了Module Region布局技巧,通过为关键模块划定物理区域,优化单元摆放,有效减少线延迟,从而协同提升时序收敛效率与设计可预测性。

weixin_29218963的博客 203

LightOJ - 1234 爆搜+分组

在数学中,第n个调和数是前n个自然数的倒数之和: Hn=1+1/2+1/3+1/4+…+1/n; 在这个问题中,给你一个数n,你应该求出 Hn.注意:这个OJ数组开太大会报Runtime Error. Input 开始输入一个整数 T (≤ 10000), 代表样例个数. 每一个样例输入一行,包含一个整数 n (1 ≤ n ≤ 108). Output 对于每个样例输出一行,代表答案Hn 。输出的...

weixin_44705665的博客 191

光储微电网混合储能系统的控制策略

随着社会生产力的不断提高,对不可再生资源的大量消耗,人们已经意识到发展可再生能源的重要性,因此微电网技术作为再生能源利用的有效形式被快速发展。蓄电池容量无限大是传统光储微电网混合储能系统控制策略一种理想形式,但实际上蓄电池的容量是有限度的,传统控制策略在蓄电池剩余电量达到阖值时将无法正常使用,由此提出了光储微电网混合储能系统的新型控制策略,又结合实际情况,对开关进行了改进,利用开关与二极管并联,使其拥有四种工作状态,当储能元件剩余电量达到阈值时,可自动恢复电量降低成本,提高并输出电池电能质量。

nhkg888的博客 1742

【数据分析/商业分析】面试题整理——SQL专题

数据分析\商业分析—面试题整理 自己总结的SQL类的面试题 文章目录数据分析\商业分析—面试题整理1.新增用户2.活跃用户数量3.连续登录4.次(n)日留存5.每个科目下分数最高的两名学生

awater_17的博客 1859

lightoj-1234-调和级数

题目传送门:https://vjudge.net/problem/LightOJ-1234 方法一:(有点投机取巧了) 公式如下:    其中r为常数,r=0.57721566490153286060651209(r就是欧拉常数) but n大的时候,精确度才高。所以数小的时候就打表。 特别注意,由于题目要求精度为10^-8,常数r为有限位数,所以正常利用这个公式,并不能达到精

newproblems的博客 529

高分影像批处理第三回——RPC文件与几何校正

前言 前面两章部分完成了图像的基本组织和大气校正,可是对于遥感影像地理相关数据,精确的地理坐标也是非常关键的。L1级数据,可惜,并没有帮我们处理地理坐标系统。无论是打开ENVI还是用gdal工具查看图像元数据,其坐标系统都是错误的或者说是未读入的。因此本章节来解决这个问题。

weixin_43762038的博客 1万+

LightOJ1234(Harmonic Number)

解法1(分块打表) 将打表结果分块,解决内存不足的问题,是一个很实用的技巧。 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> using namespace std; typedef long lo...

qq_42835440的博客 246

国密证书实战:在CentOS 7上构建GmSSL私有CA与完整证书链

本文详细介绍了在CentOS 7操作系统上,使用GmSSL工具构建私有国密证书颁发机构(CA)与完整证书链的实战指南。内容涵盖从部署GmSSL、创建国密根CA、签发服务器与客户端证书,到生产环境安全加固与最佳实践的全流程,旨在帮助系统管理员和安全工程师建立统一、可控的内部国密安全通信体系。

jenkins8butler的博客 496

主题035:计算流体力学(CFD)

计算流体力学(Computational Fluid Dynamics, CFD)是利用数值方法求解流体流动、传热传质等问题的学科。CFD已成为化学反应工程中反应器设计和优化的重要工具。∂ρ∂t+∇⋅(ρu)=0 \frac{\partial \rho}{\partial t} + \nabla \cdot (\rho \mathbf{u}) = 0 ∂t∂ρ​+∇⋅(ρu)=0对于不可压缩流动:∇⋅u=0 \nabla \cdot \mathbf{u} = 0 ∇⋅u=0动量方程:∂(ρu)∂t+∇⋅(ρ

kkchenjj的博客 268

Light OJ-1234-调和级数求和(just处理)

哇,这个题在紫书上有一个公式,但是只有n很大的时候才能满足精度,于是看了题解。 题解乍一看,哇,好高端,调和级数!仔细一看就是处理了下打表.... #include #include #include #include #include #include using namespace std; const int mod=100;//每100个分成一组,存在一个数组元素里,根

alusang的博客 978

【STK】手把手教你利用STK进行进行光电红外仿真02-STK/EOIR模块属性之一 传感器选项设置

EOIR传感器可以从空间几何属性、光谱属性、光学属性、辐射属性四个方面进行设置,并且可以设置信号传播路径中的大气特性,包括大气模型、气溶胶模型、气象学可见性和大气湿度。在定义EOIR传感器时,需要Sensor——Definition属性页中,将Sensor Type设置为EOIR。单击下面的按钮打开传感器的EOIR配置页,可以对传感器的属性进行配置,此外,还可以在场景中视情况添加相关的中心体。路径辐射损耗影响上述特性的计算,计算的结果考虑了传感器、目标位置的影响,但是还没考虑地球临边背景的影响。

weixin_44184852的博客 3201

LightOJ 1234 Harmonic Number(打表 + 技巧)

http://lightoj.com/volume_showproblem.php?problem=1234 Harmonic Number Time Limit:3000MSMemory Limit:32768KB64bit IO Format:%lld & %llu SubmitStatusPracticeLightOJ 1234 ...

deyou1988的专栏 159

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Harmonic Number LightOJ - 1234 (公式或者非常非常有技巧的打表)

Harmonic Number LightOJ - 1234    题目传送门: https://vjudge.net/problem/LightOJ-1234 题意: 调和级数求和 思路: 首先来看,这个n是很大的(1e8),一个数组似乎存不下,一个一个求又肯定超时。 怎么办,难道调和级数求和有通项公式? 百度一下,还真的有,不过是近似的。 调和级数近似求和通项解 f(...

一个从入门到入土的人写的博客 342

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

LightOJ1234Harmonic Number(打表小技巧)

题目大意:给你一个n,让你求1/1+1/2+1/3+..1/n 思路:因为n的值达到了1e8,内存不够,可以每隔50项纪录一下。 #include #include #include #include #include using namespace std; const int maxn = 1e8+5; double sum[maxn/50+5]; void init() {

Rain 526

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LightOJ - 1234 Harmonic Number(打表+技巧)

原题链接:传送门 题意:求调和级数的部分和。调和级数如下: 思路:这个题n的数据范围是1e8,直接开数组存不下,可以降值来存,就是每100个数的调和级数存一下。最后再把剩余的遍历一下就好了,时间复杂度也降下来了。 #include &lt;bits/stdc++.h&gt; using namespace std; typedef long long ll; const int N = 1e8+...

FLY的博客 235

Harmonic Number LightOJ - 1234(打表+技巧||调和级数逼近公式)

Harmonic Number LightOJ - 1234In mathematics, the nth harmonic number is the sum of the recip...

codeswarrior的博客 487

Harmonic Number(欧拉公式或技巧打表)LightOJ - 1234(求调和级数的和)

题意:求f(n)=1/1+1/2+1/3+1/4…1/n (1 ≤ n ≤ 108).,精确到10-8 (原题在文末) 知识点:调和级数(即f(n))至今没有一个完全正确的公式,但欧拉给出过一个近似公式:(n很大时) f(n)≈ln(n)+C+1/2*n 欧拉常数值:C≈0.57721566490153286060651209 c++ math库中,log即为ln。 题解:公式:f(n)=...

zeng_jun_yv的博客 675

LightOJ1234 Harmonic Number

1 /* 2 LightOJ1234 Harmonic Number 3 http://lightoj.com/login_main.php?url=volume_showproblem.php?problem=1234 4 打表 分块 5 由于只有加法运算,1e8时间是可以承受的。 6 然而空间无法承受,于是以50个单位为一块进行分块。 7 ...

dianan9456的博客 213

LightOJ1234 Harmonic Number —— 分区打表

题目链接:https://vjudge.net/problem/LightOJ-1234 1234 - Harmonic Number PDF (English) Statistics Forum Time Limit:3 second(s) Memory Limit:32 MB In ...

alince20008的博客 159

Harmonic Number LightOJ - 1234

题目:Harmonic Number LightOJ - 1234 题意: 求 Hn 思路:题意十分的简单,但是看到这道题第一想法就是暴力,后来发现有T次查询,如果暴力指定超时,所以就想到了打表,打表的时间复杂度是O(n),查询时O(1),但是问题来了数据范围最大到1e8,内存会爆掉的,所以就需要优化一下节约内存,所以可以采用分段打表,100数打一个表,空间是1e6那么内存就不会。...

REfusing的博客 295

LightOJ1234 Harmonic Number 调和级数

LightOJ1234 Harmonic Number 标签 调和级数 前言 我的csdn和博客园是同步的,欢迎来访danzh-博客园~ 简明题意 求调和级数 思路 用公式:S(n)=ln(n)+r+12nS(n)=ln(n)+r+\frac 1{2n}S(n)=ln(n)+r+2n1​ 如果对精度要求更高的话,可以分段打表 注意事项、 无 总结 无 AC代...

danzh 227

lightoj 1234 - Harmonic Number 【分块打表】

题目链接:lightoj 1234 - Harmonic Number

世界很大 441

Harmonic Number LightOJ - 1234(稀疏打表)

Harmonic Number LightOJ - 1234(稀疏打表) 题意:输入一个n,求 1+12+13+...+1n1+\frac{1}{2}+\frac{1}{3}+...+\frac{1}{n}1+21​+31​+...+n1​ 的值。 思路:由于n比较大,所以全部预处理的数组是开不下的,所以有一种预处理的方式,因为T的大小并不是很大,所以我们可以打一部分的表,然后再在输入后算一部分就可以分担一下空间不够的情况。开一个 1e61e61e6 的数组,隔100个数存一个数,比如num是预处理数组,n

CCSU_GCR的博客 205

LightOJ 1234 Harmonic Number (打表)

题意:给出n,求Σ(1/i)。 题解:打表 每隔50打个表。 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorithm> #include<queue> #include<stack> #include<cmath> #inclu

gongyuandaye的博客 192
上一篇: lightoj 1146 - Closest Distance(三分)
下一篇: lightoj 1094 - Farthest Nodes in a Tree(树的直径)
SSimpLe_Y
博客等级 码龄10年 89粉丝 181原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值