河南省网站建设_网站建设公司_百度智能云_seo优化
2025/12/29 6:04:32 网站建设 项目流程

千分位

内存限制: 256 Mb时间限制: 1000 ms

题目描述

给定一个十进制正整数,请为这个整数每隔三位数字添加一个逗号,注意这个整数可能很长。

输入格式
  • 单个整数 nn
输出格式
  • 一个含有千分位的整数表示
数据范围
  • 50%50% 的数据,1≤n≤1091≤n≤109
  • 100%100% 的数据,1≤n≤1010001≤n≤101000
样例数据

输入:

1234567

输出:

1,234,567

题解:该问题难点是如何从高位到低位进行每隔三位一个逗号“,”的计算。因为输出是从高位到低位输出,但是计算逗号要从低位到高位,所以要找到规律,发现先要用整个的字符串的长度和3求余的结果作为从高位计算的第一个逗号的位置,之后就是每隔三个进行一次的输出,用一个计数count来循环三个的计数,注意的是最后一个数如果是最后以为是不需要再输出逗号的。代码如下:

#include<string> #include<iostream> using namespace std; string a; int main(){ cin>>a; if(a.size()<=3){ cout<<a; return 0; } int start=a.size()%3-1; if(start>=0){ for(int i=0;i<=start;i++){ cout<<a[i]; } cout<<","; } int count=0; for(int i=start+1;i<a.size();i++){ cout<<a[i]; count++; if(count==3&&i!=a.size()-1){ cout<<","; count=0; } } }

代码ac通过

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询