当前位置:网站首页>UPC2022暑期个人训练赛第23场(Credit Card Payment)
UPC2022暑期个人训练赛第23场(Credit Card Payment)
2022-08-02 23:54:00 【.Ashy.】
#include<bits/stdc++.h>
using namespace std;
#define fi first
#define se second
#define IOS std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
typedef long long ull;
typedef unsigned long long ll;
const int N = 1e5+10;
const int NN = 1e6+100;
const int pp = 1e9+7;
typedef pair<string,int>PII;
const int inf = 2147483647;
double eps = 1e-5;
int t,cnt;
double a,c,b;
/*首先读完题,我们可以发现一共有两个操作步骤 1. 计算 根据本金计算利息 2. 计算 新本金=本金+利息-还款 已知利息是个整数无误差(要四舍五入) 所以我们考虑精确第二个步骤 我们可以发现每个小数都是小数点后两位,为了消除误差我们可以把小数运算化成整数运算 即把本金和还款化为整数,这样所有的运算就都消除了误差 */
int main()
{
cin>>t;
while(t--)
{
cin>>a>>b>>c;
bool f=0;
cnt=0;
double a1=a/100.0;//计算出利率
int b1=b*100+eps;//本金化为整数
int c1=c*100+eps;//还款化为整数 注意eps尽量取1e-5 - 1e-7
int e=b1*a1+0.5;//计算出利息
if(e>c1) f=1;//如果第一次利息就大于还款,那么永远都还不完
else//否则计算还款次数
{
while(b1>0)
{
e=a1*b1+0.5;
// cout<<e<<endl;
b1=b1+e-c1;
cnt++;
if(cnt==1201)
{
f=1;
break;
}
}
}
if(f) cout<<"impossible\n";
else cout<<cnt<<"\n";
}
}
至于为什么化成整数的时候要加 eps ,这与浮点数的储存有关
详见博文:浮点数误差处理
边栏推荐
- 公司招个程序员,34岁以上两年一跳的不要,开出工资以为看错了
- 升级版的冒泡排序:鸡尾酒排序(快乐小时排序)
- ORA-55610: Invalid DDL statement on history-tracked table
- 电压传感器: 工作原理、类型及电路图
- Rasa 3.x study series - Rasa - Issues 4792 socket debug logs clog up debug feed study notes
- 2022 China Eye Expo, Shandong Eye Health Exhibition, Vision Correction Instrument Exhibition, Eye Care Products Exhibition
- Speech Synthesis Model Cheat Sheet (1)
- 令人心动的AI综述(1)
- 即席查询—— Kylin使用
- 脂溶性胆固醇-聚乙二醇-叠氮,Cholesterol-PEG-Azide,CLS-PEG-N3
猜你喜欢
随机推荐
Auto.js 特殊定位控件方法 不能在ui线程执行阻塞操作,请使用setTimeout代替
浅谈I2C知识
面试题 08.07. 无重复字符串的排列组合 ●●
从一文中了解SSRF的各种绕过姿势及攻击思路
【Autosar RTM】
UE5 官方案例Lyra 全特性详解 8.如何用配置表初始化角色数据
Merge two excel spreadsheet tools
程序员的七夕浪漫时刻
Vite教程 安装
秒懂网络拓扑中的下一跳地址
升级版的冒泡排序:鸡尾酒排序(快乐小时排序)
SAP 电商云 Spartacus UI 的持续集成 - Continous integration
random.nextint()详解
d实验新异常
scala 集合通用方法
厌倦了安装数据库?改用 Docker
6、Powershell命令配置Citrix PVS云桌面桌面注销不关机
Last Common Ancestor (LCA) Study Notes | P3379 【Template】Least Common Ancestor (LCA) Problem Solution
科捷智能冲刺科创板:年营收12.8亿 顺丰与日日顺是股东
Carefully organize 16 MySQL usage specifications to reduce problems by 80% and recommend sharing with the team