码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-02-19 16:15:13      阅读:100      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!