OVa Online Judge 学习笔记- AOAPC I Volume 1. Elementary Problem Solving Big Number

本文探讨了在解决复杂计算问题时,通过构建高精度类和优化算法来提高效率的方法。详细介绍了几个实例,包括整数求和、乘积运算、溢出处理以及除法运算等,展示了如何通过巧妙的设计解决实际编程难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、题目

二、做题笔记

1.424 - Integer Inquiry

技巧:构造高精度类。类中数组长度可以根据题目条件修改以节约空间或防止溢出。题目重点是求和。

答题记录:WA

原因:字符串含有前导零影响运算,实现clean方法去除前导零。

第二次还出现错误:发现是输出单行结果后没有加换行符(文中并未提示)而直接结束输出所导致。

2.10106 - Product

技巧:构造高精度类。题目重点是乘积。

答题记录:WA

原因:重载乘法操作符时变量名写错导致出错。

3.465 - Overflow

技巧:构造高精度类。题目重点是比较运算符。

使用sscanf提取字符串中相应元素(像scanf那样),使用fscanf提取流中相应元素。(scanf)。%*+?能过滤局部的信息。

C使用<limits.h>、<float.h>获得数据类型范围,C++使用numeric_limits 模板类获得。

答题记录:AC

4.10494 - If We Were a Child Again

技巧:构造高精度类。题目重点是%/运算符。

答题记录:RE Runtime error

原因:重载"/"操作符代码bug

5.748 - Exponentiation

技巧:

高精度浮点运算,可以建立一个由一个高精度整数类及指示小数点位置的变量组合成一个高精度浮点类用于计算。

思想:浮点数乘以10的次方后就变成整数,再用高精度整数类进行求解。

答题记录:AC

代码:

https://github.com/chenxilinsidney/funnycprogram/tree/master/acm/aoapc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值