zoukankan      html  css  js  c++  java
  • PAT A1058 A+B in Hogwarts (20)[进制转换]

    题目

    题目链接 PAT 1058 A+B in Hogwarts (20)
    已知哈利波特的世界中,货币单位规则,求两个金额的总和

    解题思路

    思路1

    每个单位各自相加,若有溢出累计到更大单位

    思路2

    计算总和化为最小单位,再进行单位拆分

    易错点

    总和取最小单位数字: 总和%最小单位进制数

    知识点

    已知一个总和数字,将该数字计算出对应不同单位的各单位数字

    单词语法

    explain 解释

    Code

    Code 01

    #include <iostream>
    using namespace std;
    /* 
    	思路1 每个单位各自相加,若有溢出累计到更大单位 
    */
    int main(int argc,char * argv[]){
    	int g1,s1,k1,g2,s2,k2;
    	scanf("%d.%d.%d %d.%d.%d",&g1,&s1,&k1,&g2,&s2,&k2); 
    	int k = (k1+k2)%29;
    	int s = (s1+s2+(k1+k2)/29)%17;
    	int g = g1+g2+(s1+s2+(k1+k2)/29)/17;
    	printf("%d.%d.%d",g,s,k);
    	return 0;
    }
    

    Code 02

    #include <iostream>
    using namespace std;
    /* 
    	思路2 计算总和化为最小单位,再进行单位拆分 
    */
    int main(int argc,char * argv[]){
    	int g1,s1,k1,g2,s2,k2;
    	scanf("%d.%d.%d %d.%d.%d",&g1,&s1,&k1,&g2,&s2,&k2); 
    	int sum = (g1+g2)*17*29+(s1+s2)*29+k1+k2; 
    	int k = sum%29;
    	int s = sum/29%17;
    	int g = sum/(29*17);
    	printf("%d.%d.%d",g,s,k);
    	return 0;
    }
    
  • 相关阅读:
    关于this的指向问题
    blued面经
    数美(sm)面经
    xue球 面经
    jquery中的$("#id")与document.getElementById("id")的区别
    如何知道iframe文件下载download完成
    前端linux基础
    Vue.js 初级面试题
    React 面试题
    从输入URL到页面加载的过程
  • 原文地址:https://www.cnblogs.com/houzm/p/13337299.html
Copyright © 2011-2022 走看看