博客
关于我
程序设计入门4 子序列的和
阅读量:390 次
发布时间:2019-03-05

本文共 517 字,大约阅读时间需要 1 分钟。

子序列的和(subsequence)

输入两个正整数n<m<10^6,输出1/n^2 + 1/(n+1)^2 + …… + 1/m^2,保留5位小数。输入包含多组数据,结束标记为n=m=0。提示:本题有陷阱。
样例输入:
2 4
65536 655360
0 0
样例输出:
Case 1: 0.42361

Case 2: 0.00001

一,注意事项(关于大整数相乘溢出问题):

 

#include
int main(){ int n; long long int n_2; scanf("%d",&n); n_2 = n * n; printf("%lld", n_2); return 0;}

这里假设n = 111111,则111111*111111为11位的,,,虽然小于long long的64位,,,但是n*n由于两个乘数为int,最后的结果依然会用int(10位)表示,纵然式子的左边是long long,依然会溢出。。。

 

虽然网上说强制转换可以解决问题,即n_2 = (long long)n * n;但我的电脑上的编译器会显示栈溢出。最保险的方法就是把乘数也设成long long.

转载地址:http://rxlwz.baihongyu.com/

你可能感兴趣的文章
Mysql 报错 Field 'id' doesn't have a default value
查看>>
MySQL 报错:Duplicate entry 'xxx' for key 'UNIQ_XXXX'
查看>>
Mysql 拼接多个字段作为查询条件查询方法
查看>>
mysql 排序id_mysql如何按特定id排序
查看>>
Mysql 提示:Communication link failure
查看>>
mysql 插入是否成功_PDO mysql:如何知道插入是否成功
查看>>
Mysql 数据库InnoDB存储引擎中主要组件的刷新清理条件:脏页、RedoLog重做日志、Insert Buffer或ChangeBuffer、Undo Log
查看>>
mysql 数据库中 count(*),count(1),count(列名)区别和效率问题
查看>>
mysql 数据库备份及ibdata1的瘦身
查看>>
MySQL 数据库备份种类以及常用备份工具汇总
查看>>
mysql 数据库存储引擎怎么选择?快来看看性能测试吧
查看>>
MySQL 数据库操作指南:学习如何使用 Python 进行增删改查操作
查看>>
MySQL 数据库的高可用性分析
查看>>
MySQL 数据库设计总结
查看>>
Mysql 数据库重置ID排序
查看>>
Mysql 数据类型一日期
查看>>
MySQL 数据类型和属性
查看>>
mysql 敲错命令 想取消怎么办?
查看>>
Mysql 整形列的字节与存储范围
查看>>
mysql 断电数据损坏,无法启动
查看>>