当前位置: 首页 > news >正文

PAT甲级 1060 Are They Equal 判断两个小数是否相等

Solution:

  • 题目要求:给出两个非负的小数,且都不超过10的100次方。再给出一个有效位数,将这两个小数都转化为科学计数法的形式,即0.d[1]…d[N]*10^k (d[1]>0 除非这个数是0),若转化后的两数相等,则输出“YES”,否则,输出“NO”。
  • 给出的数可能包含前缀0或者后缀0,要注意去掉。

代码如下:

//模拟#include<iostream>#include<string>using namespace std;intn;//有效位数string s1,s2;pair<string,int>p;pair<string,int>deal_string(string a){//处理输入的字符串if(a=="0"){string d="0.";for(inti=0;i<n;i++){d+='0';}intk=0;p.first=d;p.second=k;returnp;}intleft,right;//去除多余0后子串的起始位置intflag1=0,flag2=0;for(inti=0;i<a.length();i++)//去除前缀的0和后缀的0{if(!flag1&&(a[i]!='0'||(a[i]=='0'&&a[i+1]=='.'))){left=i,flag1=1;}if(flag2==1&&a[i]!='0'){right=i;}if(flag2==0){right=i;}if(a[i]=='.'){flag2=1;}}string c=a.substr(left,right-left+1);intpos1;for(pos1=0;c[pos1];pos1++){//找到小数点的位置if(c[pos1]=='.'){break;}}intpos2;for(pos2=0;c[pos2];pos2++){//找到第一个不是0的数字位置,即科学技术法中小数点应该放在哪个位置之前,if(c[pos2]!='0'&&c[pos2]!='.'){break;}}string d="0.";intnum=0;for(inti=pos2;c[i];i++){if(c[i]=='.'){continue;}d+=c[i];num++;if(num>=n){break;}}for(inti=0;i<n-num;i++){//补0d+='0';}intk=pos1-pos2;//小数点位置的变化,就是指数if(k<0)k++;p.first=d;p.second=k;returnp;}intmain(){cin>>n>>s1>>s2;pair<string,int>mm1,mm2;mm1=deal_string(s1);mm2=deal_string(s2);if(mm1==mm2){if(mm1.first=="0"&&mm1.second==0){cout<<"YES "<<mm1.first;}else{cout<<"YES "<<mm1.first<<"*10^"<<mm1.second;}}else{if(mm1.first=="0"&&mm1.second==0){cout<<"NO "<<mm1.first<<" ";}else{cout<<"NO "<<mm1.first<<"*10^"<<mm1.second<<" ";}if(mm2.first=="0"&&mm2.second==0){cout<<mm2.first;}else{cout<<mm2.first<<"*10^"<<mm2.second;}}return0;}
http://www.jsqmd.com/news/1281708/

相关文章:

  • 国产GPU部署大模型,现在能用了
  • 全球银烧结膏市场规模与竞争趋势预测
  • 从DeepSeek到笔灵:10款AI小说软件真实评测(内含工具优缺点对比图)
  • Dify工作流实战:从零构建AI应用,可视化编排大模型与外部服务
  • c语言面试题常见易错,易混淆,比较难区分汇总
  • 百度之星 Diversity (简单树形dp)
  • 2026南阳商丘信阳梁柱墙体加固房屋改造盘点 - LYL仔仔
  • JavaAgent技术之添加注解
  • 物联网安全:SE050与PIC18F46K22硬件加密方案
  • 2026武进二手设备回收公司推荐|化工厂拆除回收公司哪家好|君东环保一站式回收服务 - geo88
  • 呼叫中心CRM对接实战:API联动原理、来电弹屏、数据同步与业务闭环落地方案
  • 一键备份QQ空间所有历史说说:GetQzonehistory完整指南
  • 免费在线GPX编辑器:3分钟学会专业GPS轨迹编辑技巧
  • PAT甲级 1061 Dating 模拟+字符串
  • AI普通话智能评测系统:核心技术解析与应用实践
  • MYSQL中union的用法
  • Gitee本土化优势与开发者实战指南
  • 3步掌握:国家中小学智慧教育平台电子课本批量下载终极指南
  • Matlab实现两阶段P2G能源转换建模与优化
  • 北京宝藏回收店|合扬名包变现体验:快、稳、值 - 日常财经早知道
  • APP运营如何才能增强用户粘性
  • 元素垂直居中
  • Windows 10运行Android应用终极指南:WSA-Windows-10逆向移植项目详解
  • PAT树的深度优先搜索(dfs)和广度优先搜索(bfs)
  • Karpathy 65行提示词:重构AI编程协作流程,提升代码质量与效率
  • 大模型应用开发的工程化路线:从实验到生产的七个里程碑
  • Google发布网络安全报告 工具堆够用了吗
  • 杭州西湖区漏水检测维修一站式服务 - 本地正规防水补漏公司精选推荐(2026 最新)全域上门:卫生间 / 厨房 / 阳台 / 屋顶渗漏水免砸砖检测维修补漏全攻略 - 吉林同城获客
  • 卡文断更怎么办?10款高效写小说软件横评(含防踩雷指南)
  • 发票、凭证和对账单怎么整理成 Excel?先定义字段,再逐项复核