Github : git@github.com:Circlecos/object-oriented.git
PDF Of Markdown : "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).

解题思路

联想到以前做过的一题字符串替换的题目——"将字符串中特定字符替换并输出新字符串",当时TLE是因为直接对原字符串进行操作然后输出。优化是直接输出不修改原字符串了。
所以这题我也采取一样的思路,直接在输出的时候加入逗号。
那么下一个问题是数字要转换成"字符串"(类比),简单啊,各种/10 %10 就好了。
但是有点浪费,因为输出的时候还需要计算现在是第几位
所以我想到/1000是不是直接取三位呢
试验了一下然后就没有然后了(下一个.jpg(雾

源代码

  1. #include <stdio.h>
  2. #include <math.h>
  3. #define N 3
  4. int main(void)
  5. {
  6. int a,b,sum,q,s[5],i,n,wid;
  7. scanf("%d %d",&a,&b);
  8. sum=a+b;
  9. if (sum<0) {printf("-");sum=abs(sum);}
  10. n=0;wid=pow(10,N);
  11. while (sum>=wid)
  12. {
  13. q=sum%wid;
  14. s[n]=q;
  15. sum/=wid;
  16. n++;
  17. }
  18. s[n]=sum;
  19. for (i=n;i>=0;i--)
  20. {
  21. if (i!=n) printf("%0*d",N,s[i]);
  22. else printf("%d",s[i]);
  23. if (i!=0) printf(",");
  24. }
  25. return 0;
  26. }

调试

第一个需要调整的是最后剩下的几位数的处理,开始的时候是直接 printf("%d,",sum) ,然后和小于1000的数据点就出事了
然后调成了现在的样子
然后出现了"1000 10"数据点变成“1,10"的问题 然后加上了%03d
然后上线测试 一个WA

这时候的代码是 while (sum>wid)
只有一个WA基本是特殊数据点了
然后看到这句就想到了1000
果然输出并不是"1,000" 而是"1000"
改掉 AC

其他

嘛没用IDE的debug因为这些bug并不是很难找
然后按习惯#define N 3却发现了一个问题
printf("%03d",s[i]);这个3怎么改(晕(◎﹏◎)
查了下 于是有个现在的代码hhhh(其实之前没找到刚刚找到hhhhhhhh
然后傻傻的push完了再commit --amend导致github变成了那样
恩 就这样

"1001. A+B Format (20)" 解题报告的更多相关文章

  1. 1001.A+B Format (20) 解题

    代码入口(https://github.com/NSDie/object-oriented) 这题的解题思路我有两个: 第一个是两个数字相加然后判断位数,因为题目限制了范围1000000的绝对值以内嘛 ...

  2. (2016.2.2)1001.A+B Format (20)解题思路

    https://github.com/UNWILL2LOSE/object-oriented 解题思路 目标: *首先运算要求实现输入2个数后,输出类似于银行的支票上的带分隔符规则的数字. 代码实现思 ...

  3. 1001.A+B Format (20)解题描述

    1. 作业链接 2. 解题的思路过程 首先这是道简单的计算题,要求计算a+b的值. 看初值条件,将a和b的取值限制在一个区间内. 本题难点和重点是如何把输出值形成题目要求的格式. 因为负数可通过在前面 ...

  4. 关于‘1001.A+B Format (20)’的解题报告

    1001.A+B Format(20) 首先要感谢一下指导我github上传问题的小伙伴们,捣腾了一整天我终于摸到了一点门路,真的谢谢你们. 小豪的github 问题描述: Calculate a + ...

  5. PAT----1001. A+B Format (20)解题过程

    1001. A+B Format (20) github链接 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B Calculate a + b and output t ...

  6. PAT-PAT (Advanced Level) Practise 1001. A+B Format (20) 【二星级】

    题目链接:http://www.patest.cn/contests/pat-a-practise/1001 题面: 1001. A+B Format (20) Calculate a + b and ...

  7. 1001. A+B Format (20) (%0nd)

    1001. A+B Format (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Calculate ...

  8. 1001.A+B Format (20)代码自查(补足版)

    1001.A+B Format (20)代码自查(补足版) 谢谢畅畅酱的提醒,发现了代码中的不足,把变量名更改成更合理的名字,并且把注释也换成英文啦! 栋哥提供的代码自查的方式也帮助了我发现很多代码中 ...

  9. PAT 甲级 1001 A+B Format (20)(20 分)

    1001 A+B Format (20)(20 分) Calculate a + b and output the sum in standard format -- that is, the dig ...

随机推荐

  1. OpenJudge 4001:抓住那头牛

    题目链接 题解: 这个题可以用广搜来解决,从农夫到牛的走法每次都有三种选择,定义一个队列,把农夫的节点加进队列,然后以这三种走法找牛,队列先进先出,按顺序直到找到牛的位置. 代码: #include& ...

  2. 一、用Delphi10.3模拟读取百度网页,并读取相关头部信息

    一.读取网页的如下: uses TxHttp, Classes, TxCommon, Frm_WebTool, SysUtils; var m_Url: string; m_Http: TTxHttp ...

  3. Diy智能家居-1.基于esp8266的语音控制系统(开篇)

    目录Diy智能家居-1.基于esp8266的语音控制系统(开篇) https://blog.csdn.net/arno1988/article/details/82628589 Diy智能家居-2.基 ...

  4. Linux入门第二天——基本命令入门(上)

    一.常用命令介绍 常见命令可参考:http://man.linuxde.net/ http://linux.51yip.com/ 请对照参考! 常用的快捷键:http://blog.csdn.net/ ...

  5. 双系统IOS\windows7 换成Windows10后果

    昨天将双系统IOS 和Windows7 换成了Windows10后 发现原来在IOS盘"E"盘下面的文件都不显示了,而且盘符都打不开,那叫一个着急啊,开发项目的代码全在那个盘符里面 ...

  6. jQuery学习- 表单事件

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 利用开源软件 Hugin 实现照片的景深合成

    利用开源软件 Hugin 实现照片的景深合成 本文主要参考了下面的文章:http://macrocam.blogspot.jp/2013/09/using-hugin-for-focus-stacki ...

  8. 【HNOI2013】游走

    题面 题解 图上的期望大部分是\(dp\),无向图的期望大部分是高斯消元 设\(f[i]\)表示走到点\(i\)的期望,\(d[i]\)表示\(i\)的度,\(to(i)\)表示\(i\)能到达的点集 ...

  9. 菜鸟vimer成长记——第2.2章、visual模式

    vi是没有可视模式的.然而大多数编辑软件都都是有可视模式.所以我猜测vim是几乎迫于无奈才有了visual模式. 个人建议,能不用就不用.这样能直接在头脑里处理好文本,锻炼文本处理能力,同时能转变过来 ...

  10. GGTalk——C#开源即时通讯系统源码介绍系列(一)

    坦白讲,我们公司其实没啥技术实力,之所以还能不断接到各种项目,全凭我们老板神通广大!要知道他每次的饭局上可都是些什么人物! 但是项目接下一大把,就凭咱哥儿几个的水平,想要独立自主.保质保量保期地一个个 ...