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

PAT甲级(Advanced Level) 1001 A+B Format

1001 A+B Format

分数 20

Calculate a+b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits).

Input Specification:

Each input file contains one test case. Each case contains a pair of integers a and b where −106≤a,b≤106. The numbers are separated by a space.

Output Specification:

For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.

Sample Input:

-1000000 9

Sample Output:

-999,991

题意概述 

计算 a+b 并以标准格式输出总和 —— 即,数字必须用逗号分隔成三位一组(除非少于四位数字)。

题解

因为标准格式是从个位数字开始,每三个为一组(这个是个坑 一开始看题没发现这个 从正着写只拿了14分),所以要将计算后的数转化为字符串,并且反着模拟

最后将结果再反着输出

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define endl '\n'
ll a,b;
ll ans;
int main()
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>a>>b;ans=a+b;string s=to_string(ans);reverse(s.begin(),s.end());string ss="";int op=0;for(int i=0;i<s.size();i++){if(s[i]>='0'&&s[i]<='9')//判断是否是数字 不能算符号{op++;}ss+=s[i];if(op==3 && (s[i+1]>='0'&&s[i+1]<='9'))//达到一组条件后 且 下一个是数字而不是符号{ss+=',';op=0;}}reverse(ss.begin(),ss.end());cout<<ss<<endl;return 0;
}


http://www.mrgr.cn/news/19582.html

相关文章:

  • jmeter使用——接口测试事知识点
  • 海康二次开发学习笔记13-从Group外部输入图像
  • opencv全面详解教程
  • 浅谈人工智能之基于AutoGen Studio+litellm+ollama构建model
  • 2024年【化工自动化控制仪表】考试资料及化工自动化控制仪表找解析
  • Vue2项目搭建:Vue2.7+Vite4+Pinia+TailwindCSS+Prettier+ESLint
  • 云计算之ECS
  • 一招制胜!掌握 Python 中pip的8个必备命令
  • MSP430F149实现0.96寸OLED显示
  • 编码(曼彻斯特编码,4B/5B 编码,8b/10b编码)
  • 解决Pynput不能在Ubuntu22.04上正常使用问题
  • 【LabVIEW学习篇 - 17】:人机交互界面设计01
  • 轻松上手 | 基于RockyLinux 9.4安装部署Zabbix 7.0
  • 2024年最强图纸加密软件大揭秘!图纸加密软件推荐
  • lvs DR模式调试
  • 【Fastapi】使用APIRouter做路由管理
  • 189.轮转数组
  • HarmonyNext动画大全03-帧动画
  • 数据分析 设备一个月以来的参数变化
  • 【SM系列】简单说说SM2,SM3,SM4加密算法