首页 > 其他 > 详细

PAT:1058. A+B in Hogwarts (20) AC

时间:2015-02-19 16:13:16      阅读:233      评论:0      收藏:0      [点我收藏+]
#include<stdio.h>
#include<stdlib.h>
int main()
{
  int a1,b1,c1,a2,b2,c2;              //【思维】168以内的数字可以用两位13进制数表示,大大简化代码
  scanf("%d.%d.%d",&a1,&b1,&c1);
  scanf("%d.%d.%d",&a2,&b2,&c2);
  int ra,rb,rc,tmp;                //ra,rb,rc存放结果的第一、二、三位置数字,tmp存当前的进位
  ra=rb=rc=tmp=0;
  rc=(c1+c2)%29;                  //【skill】通过不断的取余,取进位,加到下一位取余再进位……无需判断,指导处理到头
  tmp=(c1+c2)/29;
  rb=(b1+b2+tmp)%17;
  tmp=(b1+b2+tmp)/17;
  ra=a1+a2+tmp;
  printf("%d.%d.%d",ra,rb,rc);

  //system("pause");
  return 0;
}

PAT:1058. A+B in Hogwarts (20) AC

原文:http://www.cnblogs.com/Evence/p/4296127.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!