zoukankan      html  css  js  c++  java
  • 1001.A+B Format (20)

    1001.A+B Format (20)

    GitHub链接

    解题思路

    1. 此题大致上是简单的A+B问题,只是在输出时额外要求以标准数(即每三位数记一个逗号的形式)输出。
    2. 标准数输出,一开始想的是把数字转化为字符串(网上查阅了itoa函数),后来多次尝试发现比较难实现。然后发现题目给的范围是1000000以内,这样一来逗号就只有1个、2个、3个三种情况,将数字大小进行判断,分别输出就可以,不用再转化为字符串。
    3. 总体思路:首先将符号去掉,便于计算。然后分为三种情况,再通过计算得到每个逗号之间的三位数,分别输出即可。

    编码过程中调试

    1. 一开始的难题是如何取出逗号之间的数字,经过多次尝试,找到了方法:
      • 1000以内的数字:直接输出
      • 1000-1000000之间的数字:先将数字除以1000后输出前三位数字,输出一个逗号后,用1000取余输出后三位
      • 1000000以上的数字:现将数字除以1000000后输出前三位数字,输出一个逗号,再将原数字除以1000后再用1000取余,输出中间三位,输出一个逗号,最后将原数字用1000取余即可输出最后三位
    2. 后来调试发现遇到不足三位数的地方,不会自动补上0,苦思无果,网上查阅资料后发现只要在输出时写为“%03d”,就会输出三位数字左端补0的格式(新技能get),之后在该补0的地方补上0就完成了。

    在PAT上的提交记录列表截图

    PAT提交记录

    (提交前测试的数据比较多,一次就过真是感人。)
  • 相关阅读:
    PHP连接MYSQL数据库
    Eclipse读取xml中文乱码问题解决
    JSP
    参考代码案例
    EL和JSTL(2)
    EL和JSTL(1)
    状态管理(之cookie、session、filter、listener)
    一、Servlet
    状态管理(之cookie、session、filter、listener)
    spring
  • 原文地址:https://www.cnblogs.com/zhengshuhao/p/5159031.html
Copyright © 2011-2022 走看看